2

テキスト ファイルを読み込んで、そのコンテンツを xml 出力ファイルのタグ内に配置しています。私が直面している問題は、入力テキスト ファイルに<96>またはのような制御文字が含まれている<92>ため、スクリプトが無効な xml を出力することです。

これらの制御文字を対応する数値の HTML エンティティに変換して、データが失われず、結果のファイルも有効になるようにするにはどうすればよいですか?

私が試してみました:

perl -p -i -e 's/\x96/\&\#150\;/g; s/\x92/\&\#146\;/g;' out_xml

しかし、制御文字を HTML エンティティに変換たいと思います。

4

1 に答える 1

2

HTML::Entitiesはあなたが望むことを行います:

$ perl -MHTML::Entities -le 'print encode_entities("\x96\x92")'
&#150;&#146;
于 2012-12-05T13:16:13.547 に答える