URI::_punycode - encodes Unicode string in Punycode |
URI::_punycode - encodes Unicode string in Punycode
use strict; use warnings; use utf8;
use URI::_punycode qw(encode_punycode decode_punycode);
# encode a unicode string my $punycode = encode_punycode('http://☃.net'); # http://.net-xc8g $punycode = encode_punycode('bücher'); # bcher-kva $punycode = encode_punycode('他们为什么不说中文'); # ihqwcrb4cv8a8dqg056pqjye
# decode a punycode string back into a unicode string my $unicode = decode_punycode('http://.net-xc8g'); # http://☃.net $unicode = decode_punycode('bcher-kva'); # bücher $unicode = decode_punycode('ihqwcrb4cv8a8dqg056pqjye'); # 他们为什么不说中文
the URI::_punycode manpage is a module to encode / decode Unicode strings into Punycode, an efficient encoding of Unicode for use with IDNA.
All functions throw exceptions on failure. You can catch
them with
the Syntax::Keyword::Try manpage or the Try::Tiny manpage. The following functions are exported
by default.
my $punycode = encode_punycode('http://☃.net'); # http://.net-xc8g $punycode = encode_punycode('bücher'); # bcher-kva $punycode = encode_punycode('他们为什么不说中文') # ihqwcrb4cv8a8dqg056pqjye
Takes a Unicode string (UTF8-flagged variable) and returns a Punycode encoding for it.
my $unicode = decode_punycode('http://.net-xc8g'); # http://☃.net $unicode = decode_punycode('bcher-kva'); # bücher $unicode = decode_punycode('ihqwcrb4cv8a8dqg056pqjye'); # 他们为什么不说中文
Takes a Punycode encoding and returns original Unicode string.
Tatsuhiko Miyagawa <miyagawa@bulknews.net> is the author of the IDNA::Punycode manpage which was the basis for this module.
the IDNA::Punycode manpage, RFC 3492, RFC 5891
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
URI::_punycode - encodes Unicode string in Punycode |