我有一个包含ISO解码问题的Perl
$string = "&®";
当我做HTML::Entities::decode($string);
它返回我的&®
从我想通了,这个功能是无法解码的ISO代码http://www.w3schools.com/tags/ref_entities.asp
那么字符串我尝试了一些其他的东西喜欢,但没有成功
Encode::decode('utf8', '®') // returns ®
Encode::decode_utf8('®') // returns ®
然后我试图手动替换它使用正则表达式模式,
$string =~ s/®/®/g;
但上述行转换成&®,可有一个人请告诉我如何把这些字符ISO解码,并且在手动的情况下更换为什么Â会来吗?
对实体权威的文档是[在HTML规范(http://www.w3.org/TR/html/syntax.html#named-character-references),不在不可靠的w3schools。无论如何,我无法重现:'perl -CS -MHTML :: Entities -E'say decode_entities“& ®”''产生预期的输出,使用最新的H:E v3.69 perl v5.18.1。你使用什么版本? – amon
perl 5.14.2正常输出也是(HTML ::实体3.69太) – Suic
回复:“它返回给我'&®'”,那不是真的,它返回'&®'。 – ikegami