Beispiel:
y/aou/äöü/
ersetzt alle a durch ä, alle o durch ö und alle u durch ü
Ist z.B. praktisch bei Anpassung zwischen ANSI und ASCII-Datensatz.
Also wenn man Texte auf der Windows-Kommandozeile ausgeben will.
Denn da werden "Sonderzeichen" anders ausgegeben als gewollt.
Um eine ordentliche Anzeige zu haben, habe ich eine Funktion zum Ersetzen geschrieben.
(vielleicht habe ich das Rad auch neu erfunden :o)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
sub ansi2ascii {
$_ = $_[0];
y/Ä/´/; # unvollständig
y/Ü/¨/;
y/ß/á/;
y/è/¦/;
y/È/Ô/;
y/Ê/Ò/;
y/Í/Ö/;
y/Ì/Þ/;
y/Î/×/;
y/í/¡/;
y/Ó/à/;
y/Ò/ã/;
y/Ô/â/;
y/Ú/é/;
y/Ù/ë/;
y/Û/ê/;
y/ú/£/;
y/õ/ä/;
return $_;
}
Dies ist lang, aber übersichtlich.
Könnte man auch so schreiben:
y/ÄÜÔ/´¨â/; # hier nur 3 Zeichen ersetzt
ACHTUNG, hier im Forum lassen sich viele Zeichen nicht anzeigen, deshalt hier eine Kopie:
http://beauty.online.de/pub/ansi2ascii.pl.txt
Oder per mail zuschicken lassen: beautyod(ät)gmx.de
Forum-Schlüsselwörter: ANSI ASCII OEM Zeichensatz DOS Kommandozeile