Thread ZERO WIDTH SPACE (Unicode 200B) mit einem RegEx finden und ersetzen
(6 answers)
Opened by micha2 at 2023-07-12 14:26
Wenn Du etwas per Pipe an ein Perl-Programm schickst, dann wird das per Default in einer 1-Byte-Codierung interpretiert. Dein \u200B hat drei Bytes, und das sind dann drei Characters, von denen keiner der ZERO WIDTH SPACE ist. Das folgende gibt eine 3 aus:
Code: (dl
)
echo -ne "\u200B" | perl -E "say length <>" Du musst Perl also mitteilen, dass der Input als UTF-8 interpretiert werden soll... ich seh' gerade, das hat GwenDragon auch schon geschrieben: Code: (dl
)
echo -ne "\u200B" | perl -CS -E "say length <>" Nun bekommst Du eine 1, und es klappt auch mit der Ersetzung. |