使用XML::dom匹配reqex中的XML实体



我有一个脚本,它循环遍历xml文件中的所有文本节点(使用xml::dom),然后根据正则表达式对它们进行数学运算。我无法匹配如下文本:

§ 1-101

我无法与

等正则表达式进行匹配。
my $match =~ qr/((?:§ )?(?:d+-d{3}))/;

当我省略实体时它工作正常…我最好的(有限的)猜测是,实体不是简单的文本,我需要代码将实体扁平化为纯文本,或者以某种方式处理实体。处理这个问题的最好方法是什么?

XML::DOM::Node有一个非标准方法expandEntityRefs(),它将这些扩展为明文。否则,HTML::Entities也可以很好地用于您的使用。

最新更新