Net::IDN::Nameprep(3) A Stringprep Profile for Internationalized Domain Names (RFC 3491)


use Net::IDN::Nameprep;
$output = nameprep $input;


This module implements the nameprep specification, which describes how to prepare internationalized domain name (IDN) labels in order to increase the likelihood that name input and name comparison work in ways that make sense for typical users throughout the world. Nameprep is a profile of the stringprep protocol and is used as part of a suite of on-the-wire protocols for internationalizing the Domain Name System (DNS).


This module implements a single function, "nameprep", which is exported by default.
nameprep( $input [, AllowUnassigned => 1 ] )
Processes $input according to the nameprep specification and returns the result.

If $input contains characters not allowed for nameprep, it throws an exception (so use "eval" if necessary).

This function takes the following optional parameter:

(boolean) If set to a false value, unassigned code points in $input are not allowed.

False MUST be used for stored strings.

True MAY be used for queries.

The default is true (backwards compatibility).


Claus Fa.rber <[email protected]>

Previous versions written by Tatsuhiko Miyagawa <[email protected]>


Copyright 2007-2015 Claus Fa.rber.

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.