I would like to request the wisdom of the Monks on the hairy subject of UTF-8...
To fix some problems with BibTeX and UTF-8 characters, I've made a little perl-script that (among other things) should replace some UTF-8 characters by TeX-macros. The problems is that I cannot seem to get the regular expressions to recognise UTF-8 characters.
I use something like:
while (my $line = <>) { $line =~ s/\x{00a9}/\\textcopyright/g; # "©" $line =~ s/\x{2010}/\-/g; # "‐" $line =~ s/\x{fffd}/\\,/g; # "�" $line =~ s/\x{03b4}/\$\\delta\$/g; # "δ" $line =~ s/\x{00c5}/\\AA\{\}/g; # "Å" print $line; }
It run this in Perl 5.10.0 on a 64-bit Ubuntu Jaunty system. The locale is set to en_US.UTF-8, and I checked that the input-file is really UTF-8.
When I run the script however, it seems to replace only the 8-bit ASCII characters 0xa5 and 0xc5 (resulting in invalid UTF-8 output), instead of replacing the UTF-8 ones as I intended. I tried adding "use utf8", "-CIO" and/or setting STDIN and STDOUT to ":utf8" using binmode, but it doesn't seem to make a difference.
I'm a bit stuck now, does anyone know what I'm doing wrong?
Best regards, LevienIn reply to Search & replace of UTF-8 characters ? by levien
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |