Sorry I should have been a bit more explicit with the specification.

The reason that the double O in the 2nd example does not get an X inserted
is that once the X is inserted for the first double, the Os are split
between 2 digraphs and no longer require to be separated. In other words,
after the first insertion, the digraphs need to be re-generated to see if
further insertions are required.

   _2 ]\ dedouble 'THEEQUICKBROWFOOX'
TH
EX
EQ
UI
CK
BR
OW
FO
OX

A simple non-looping solution doesn't leap out at me!


On Thu, Feb 4, 2021 at 6:20 PM Raul Miller <rauldmil...@gmail.com> wrote:

> I would be tempted to go with
>
> dedouble=: #!.'X'~ 1 j. #{.}.=}:
>
> But I do not understand why the double O in your second example does
> not get an X inserted. So maybe I am missing something.
>
> I hope this helps,
>
> --
> Raul
>
> On Wed, Feb 3, 2021 at 11:02 PM Ric Sherlock <tikk...@gmail.com> wrote:
> >
> > I need to separate any digraphs in a string, that consist of 2 letters
> the
> > same, by inserting an 'X' between them.
> >    _2 ]\ 'THEEQUICKBROWFFOX'
> > TH
> > EE
> > QU
> > IC
> > KB
> > RO
> > WF
> > FO
> > X
> >
> > 'EE' is a digraph that needs an 'X' inserted. Doing so will result in:
> >
> > TH
> > EX
> > EQ
> > UI
> > CK
> > BR
> > OW
> > FF
> > OX
> >
> > So now we also need to separate the 'FF' digraph.
> >
> > I want to define a verb "dedouble" that will process a string so:
> >    dedouble 'THEEQUICKBROWFFOX'
> > THEXEQUICKBROWFXFOX
> > But:
> >    dedouble 'THEEQUICKBROWFOOX'
> > THEXEQUICKBROWFOOX
> >
> > I have implemented a solution at
> > https://rosettacode.org/wiki/Playfair_cipher#J but am interested in
> > alternative implementations.
> > ----------------------------------------------------------------------
> > For information about J forums see http://www.jsoftware.com/forums.htm
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
>
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to