In the end I used character 31
string SAFE_SEP = ""; //chr(31)
and after a while I ended up using it everywhere, even in trivial situations
In SL it prints as very distinct black triangle , which is good for visual inspection
The only drawback I can see is that, as above, it will not show at all in notepad, and show as a space in wordpad and in lsl editor. Notepad++ shows it as a "US" (Unit Separator) on black background so that's ok. In all cases, copy and pasting it to-and-fro preserves it (as one would reasonably expect) , so you can copy it from above even though you can't see it.
Thank you all for your replies.