Thread IDNA2008 Punycode Modul gesucht (2 answers)
Opened by wiesensurfer at 2011-07-11 09:03

wiesensurfer
 2011-07-11 09:03
#150282 #150282
User since
2011-06-01
36 Artikel
BenutzerIn
[default_avatar]
Hallo!
Kann mir jemand sagen, welches das korrekte Modul ist, mit dem ich deutsche Umlaute und das ß in Punycode umwandeln kann? Ich hab es mit
Net::IDN::Encode versucht, ich bekomme es aber nicht wieder dekodiert.

Wichtig wäre IDNA2008, damit aus ß nicht ss wird.

Hier mein Test:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
use strict;
use utf8;

binmode STDOUT, ":utf8";

use Net::IDN::Encode qw(:all);
use Net::IDN::Punycode qw(:all);


my @domain = (
'müller.example.net',
'müßer.example.net',
'xn--mller-kva',
'xn--mller.example.net-22b'
);

foreach (@domain) {
printf "%s toAscii=<%s>\n", $_, to_ascii($_);
printf "%s toUnicode=<%s>\n", $_, domain_to_unicode($_);
printf "%s toPunycode=<%s>\n", $_, encode_punycode($_);
printf "%s Unicode=<%s>\n", $_, to_unicode($_);
}


Leider bekomme ich auch was falsches. Bei 'müller.example.net' bekomme ich als Ergebnis 'xn--mller.example.net-22b' es sollte aber 'xn--mller-kva' herauskommen.

Kann mir jemand sagen, ob ich ein falsches Modul verwende, oder was mache ich sonst falsch?

View full thread IDNA2008 Punycode Modul gesucht