Using the Replace in Text operation does not work for the pipe symbol

I have a text file that contains the pipe symbol (|). I want to replace these with a comma and so read in the text and then attempt to replace the pipe symbol. The operation does not fail (generate an error), but it inserts a comma between each character, so I end up with something like the following,
,2,5,/,0,2,/,2,0,3,0,|,0,0,4,0,0,0,6,|,X,S,0,1,0,7,2,0,3
when I started of with ;
25/02/2030|0040006|XS0107203
I have tried escaping the pipe symbol, placing it in a variable, adding extra pipes etc but cannot get it to replace the |. If I use Find in Text, then this will quite happily return the position index of the pipe so I know the pipe symbol exists.
What do I need to do to replace the pipes?

In the ‘Replace in Text’ operation the ‘Text to Replace’ field takes a regular expression, an introductory tutorial can be found here: https://regexone.com
The pipe is a special character in regular expressions which means ‘logical or’, and since it’s given no parameters on either side it’s seeing essentially ‘null or null’ which it takes to mean match every position in the text which is why it’s putting a comma between every character.
Special characters in regex can be escaped with a \ character, in your case you can use \|

e.g.

fileText = text.read ( filePath = 'myFile.csv' ) 
updatedFileText = text.replace ( text = fileText , replace = '\|' , replacement = ',' ) 
text.write ( text = updatedFileText , filePath = 'myUpdatedFile.csv' )

The full list of special characters in regex is .+*?^$()[]{}|\

I note the operation doesn’t actually say that the input field is a regex, we’ll make sure that the operation description is updated in the next version.

Hi,
That’s great, thanks.
I hadn’t cottoned on that the field was a regular expression but I’ll make note for future.