2008-05-13 Tue
Unicode の16進数の数値文字参照を正規表現などで元に戻す
- Summary
� のような数値文字参照から元の文字に戻す方法.
- Encodeを使用する方法
#!/usr/bin/perl use strict; use warnings; use Encode; use utf8; binmode STDOUT, ":utf8"; my $a = "情報時代"; $a =~ s/&#x([0-9A-F]{4});/decode('UCS2', pack('H*', $1))/ge; print "$a\n";
- HTML::Entitiesを使用する方法
my $a = "情報時代"; use HTML::Entities; print HTML::Entities::decode($a), "\n";
- 正規表現を使用する方法
my $a = "情報時代"; $a =~ s/&#x([0-9A-F]{4});/chr(hex($1))/ge; print "$a\n";
- Reference
たつをのChangeLog - 2008-05-10 - Unicode の16進数の実体参照を正規表現などで元に戻す
http://chalow.net/2008-05-10-3.html
404 Blog Not Found - 2008-05-11 - perl - 文字参照を(en|de)codeする
http://blog.livedoor.jp/dankogai/archives/51048882.html
HTML::Entities
2004-12-21 Tue
UTF の Encode 別 BOM (Byte Order Mark)
- List
| Bytes | Encoding Form |
| 00 00 FE FF | UTF-32, big-endian |
| FF FE 00 00 | UTF-32, little-endian |
| FE FF | UTF-16, big-endian |
| FF FE | UTF-16, little-endian |
| EF BB BF | UTF-8 |
Unicode Home Page - FAQ - UTF and BOM
http://www.unicode.org/faq/utf_bom.html#BOM
最終更新時間: 2008-09-05 14:14