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