http://www.perlmonks.org?node_id=998304


in reply to getting Unicode character names from string

I was able to hit on a solution to the first question with some help from Google.

This test code works well, although I confess that I don't fully yet understand the codepoint_hex method that gets me the code point I need:
while($testStr =~ m/(.)/g) { $string = pad(codepoint_hex($1)); print("$string\n"); print charnames::viacode($string) . "\n"; } sub codepoint_hex { if (my $char = shift) { return sprintf '%2.2x', unpack('U0U*', $char); } } sub pad { my $str = shift; while (length $str < 4) { $str = "0$str"; } return "0x$str"; }
Result:
0x03bb
GREEK SMALL LETTER LAMDA
0x03b1
GREEK SMALL LETTER ALPHA
0x1f78
GREEK SMALL LETTER OMICRON WITH VARIA
0x03c2
GREEK SMALL LETTER FINAL SIGMA


Jason