Split a character string based on change of character: Difference between revisions

Content added Content deleted
m (→‎{{header|ALGOL 68}}: Remove unnecessary "Works with" and unused variable)
Line 315: Line 315:
<pre>
<pre>
g, HHH, 5, YY, ++, ///, \
g, HHH, 5, YY, ++, ///, \
</pre>

=={{header|Amazing Hopper}}==
<syntaxhighlight lang="c">

#include <basico.h>

#define INICIO 1
#define CHARS "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+-/\\:,;:_*"

algoritmo
objetivo = "gHHH5YY++///\\", indice=0
largo=0, sublargo=0, lista={}, v=0
#( largo = len(indice:=(onechar(CHARS,objetivo))) )

para cada caracter ( v, indice, largo )
#( replicate(v, sublargo := ((poschar(INICIO, v, objetivo) - 1 ))))
meter en( lista )
objetivo+=sublargo
siguiente
imprimir( "LISTA=\n", lista, NL )


terminar
</syntaxhighlight>
{{out}}
<pre>
$ hopper3 basica/splitrep.bas
LISTA=
g,HHH,5,YY,++,///,\
</pre>
</pre>