匹配和捕捉双重角色实体/参考的最佳方法?

时间:2012-09-24 14:38:56

标签: javascript html regex character-entities

我正在谈论像&之类的内容,当它实际呈现给&时会呈现给:&。在this我询问了如何匹配实体,但似乎用正则表达式确实不可能或不现实。那么匹配双实体的最佳方法是什么?

编辑:这是一个很好的方法吗? .replace(/&(?=#?x?[0-9a-z]+);/i, '&');

(我正在使用javascript)

3 个答案:

答案 0 :(得分:2)

我会去

 pattern       &([a-zA-Z0-9]+?;)\1
 replacement   &$1

仅替换双安培,或:

 pattern       &([#a-zA-Z0-9]+?;)

编辑:

你的模式

 /&(?=#?x?[0-9a-z]+);/i

对我来说也很好。

注意:这些都不值得信任

答案 1 :(得分:0)

可能:

&[a-zA-Z]+;

虽然不是万无一失。

答案 2 :(得分:0)

首先规范化您的数据。使用您对编码的任何了解将它们解码回形式,其中字符/数据片段只有一种可能的编码。之后,将这个标准化数据与标准化模式匹配。