我有以下情况:
有一个工具可以从Web界面获取XSLT并将XSLT嵌入到XML文件中(应该有人被解雇). “不幸的是”我在一个法语国家工作,因此XSLT有很多带有重音符号的单词.当XSLT嵌入到XML中时,该工具会将所有重音转换为其HTML代码(Iacute,igrave等…).
我的Perl代码正在从XML中检索XSLT,并使用Xalan命令行工具针对其他XML执行它.每次XSLT中都有一些重音时,Xalan工具会抛出异常.
我最初做一个正则表达式来改变XSLT中的所有重音:
# the & is omitted in the codes becuase it will be rendered in the page
$xslt =~s/Aacute;/Á/gso;
$xslt =~s/aacute;/á/gso;
$xslt =~s/Agrave;/À/gso;
$xslt =~s/Acirc;/Â/gso;
$xslt =~s/agrave;/à/gso;
但这样做意味着我必须为每个重音代码写一个正则表达式….
我的问题是,如果没有为每个代码编写正则表达式,有没有这样做呢? (认为这是唯一的解决方案,想要呕吐.)
顺便说一句,该工具是TeamSite,它很糟糕…..
编辑:我忘了提到我需要一个Perl唯一的解决方案,安全性不允许我安装他们没有检查一周左右的任何类型的库:(