人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Perlに関する質問です。

日本語文字列をHTMLエンティティに変換したいのですが、
どうやってもうまくいきません。

どうやればいいのか教えてください。

# ちなみにJavascriptでやれっていうのはなしです。

●質問者: にゃるら
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:HTML JavaScript Perl 文字列 日本語
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● villain
●45ポイント ベストアンサー

数値参照文字や文字参照文字(実体参照文字)のことでしょうか。


HTML エンティティ


何の用途に使用したのかが分かりませんが、これらのコード番号は

Unicodeです。


文字列を一度Unicodeに変換しないとできないのではないでしょうか。

因みに、UTF-8やUTF-16ではないのでご注意下さい。


◎質問者からの返答

用途に関しては、RSSなんかで機種依存文字が含まれたりしたとき、パースエラーを起こさないようにするとかそういう系です。

Unicode系のモジュールを調べてみます。


2 ● kentaro543g
●7ポイント

http://ab.jpn.ph/soft/html_hen.html

こんなソフトを利用されるのは、いかがでしょう?

メールアドレスだけ、全て、ランダムなどの設定があるようなので、対応できますか? もし、日本語文字列だけなら、その部分だけのHTMLファイルを作れば、変換されるでしょう。上手く使ってみてください。

◎質問者からの返答

いや、サーバサイドでやりたいんです。

Javascriptやその他Softwareでできるのはわかっているのですが。


3 ● tombe
●28ポイント

$str = '日本語文字列';

$str =~ s/(.)/'&#'.ord($1).';'/eg;

print $str;


こんなもんで。

日本語だけでなく英数記号も全てエンティティ化されます。

◎質問者からの返答

ASCII文字は問題なかったのですが、日本語が文字化けしました。文字コードはUTF-8なのですが。フラグとかが怪しいのかな?

もう少し質問を続けます。

追記:

Unicode::Escapeというモジュールを利用してできました。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ