![]() |
![]() |
3 Einträge, 1 Seite |
1
2
3
use Encode qw(encode decode);
my $plain = encode("ascii", decode("utf8", $utfstring));
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
use charnames qw();
my $s = "Müller";
my $t = "";
for my $ch (split //, $s) {
my $ord = ord $ch;
if ($ord > 127) {
my $charname = charnames::viacode($ord);
if ($ord == 223) { # Ausnahme sz
$t .= "ss";
} elsif ($charname =~ /(CAPITAL|SMALL)\s+LETTER\s+(.)/) {
if ($1 eq 'CAPITAL') {
$t .= uc($2);
} else {
$t .= lc($2);
}
} else {
$t .= "?";
}
} else {
$t .= $ch;
}
}
warn $t;
![]() |
![]() |
3 Einträge, 1 Seite |