12-30-2020, 05:11 PM
I have a string "ABCDEF".
I look, say, for the letters "CD".
If that strings "CD" exists,
then I want to change it by "D" (with no "C").
The initial string "ABCDEF" should
become "ABDEF" (without the letter C).
My first idea was to write
<<
"ABCDEF"
DUP
"CD"
POS
"" // Empty string (instead of "C")
REPL // to be put instead of the original letter "C"
>>
But it does not work
("" REPL meaning "do not replace [the letter C]").
One "heavy" solution is then:
\<< "ABCDEF" DUP SIZE \-> str siz
\<< str "CD" POS \-> pos
\<< str 1 pos 1 - SUB
str pos 1 + siz SUB
+
\>>
\>>
\>>
Question:
How to write a shorter version,
possibly with the instruction REPL
(and not by concatenating
...Sub... ...SUB +)?
Sorry for that simple question,
but I would appreciate your insights.
Regards,
Gil
I look, say, for the letters "CD".
If that strings "CD" exists,
then I want to change it by "D" (with no "C").
The initial string "ABCDEF" should
become "ABDEF" (without the letter C).
My first idea was to write
<<
"ABCDEF"
DUP
"CD"
POS
"" // Empty string (instead of "C")
REPL // to be put instead of the original letter "C"
>>
But it does not work
("" REPL meaning "do not replace [the letter C]").
One "heavy" solution is then:
\<< "ABCDEF" DUP SIZE \-> str siz
\<< str "CD" POS \-> pos
\<< str 1 pos 1 - SUB
str pos 1 + siz SUB
+
\>>
\>>
\>>
Question:
How to write a shorter version,
possibly with the instruction REPL
(and not by concatenating
...Sub... ...SUB +)?
Sorry for that simple question,
but I would appreciate your insights.
Regards,
Gil