Perl で文字列を数字文字参照に変換する方法
読了まで:約2分
Perl で
追記: [[2006-07-02]]
- [[Perl で
文字列を 一般実体 参照や 数字文字参照に 変換する 方法まと め]]
にまとめ直しました。
追記: [[2006-06-22]]
で
日
のような
URI 直したいですが、
さらに
なんか
Perl で文字列を HTML Entities 数字文字参照 に変換する方法
追記: [[2006-06-22]]
この
を参照してもらえると助かります。そして北村さんの方法のほうがスマートだったりする。
結論から
use Unicode::Escape;
my $str = '日本語文字列';
my $charset = 'utf8'; # 文字コード
$str = Unicode::Escape::escape($str,$charset);
$str =~ s/\\u( [[0-9a-f]] +)/&#x$1;/ig;
# 16進数# 10進数の場合こっち
# $str =~ s/\\u( [[0-9a-f]] +)/'&#' . hex($1) . ';'/egi;
こんな
しかし、問題が無いわけではないッ!
何故断言しているのでしょうか(´∀` )?
ってUnicode::Escape
サーバによっては入っていません
しかも
インストールがめんどくさい
からです。
まあUnicode::Escape
で、
%perl -MCPAN -e shell
cpan> install Unicode::Escape
してやる
もっともCPAN レンタルサーバ
あたりで
どうでもいいですが
上のUnicode::Escape
の
追記: [[2006-06-23]] 現在、Unicode::Escape
は
しかし、