【发布时间】:2018-05-15 21:41:45
【问题描述】:
我有一个包含几个特殊字符的巨大 HTML,格式为   或 "�。
其中一些是错误的,因为他们缺少开头的 &。
我想搜索此类错误的空间字符。我知道我可以通过以下正则表达式搜索所有正确的特殊字符:
\&(?:[a-z]+|#x?\d+);\
但我需要一个 正则表达式来搜索错误的表达式(没有初始 &)。 你能帮助我吗? 提前致谢
编辑:
按照建议,我将发布一个示例。我的 HTML 包含以下语句:
<![CDATA[<nolink>blablabla blablabla</nolink>]]>quot;
我们有 2 个特殊的 HTML 字符:
-
&nbsp; quot;
我有兴趣找到第二个项目,因为它是错误的(缺少最初的 &)。
所以请求的正则表达式的输出应该是:quot;
【问题讨论】:
-
不清楚您的目标是什么。发布不正确代码的示例,并更正输出。另外,如果你有一个像
Some numbers are prime; but others are not这样的句子(注意&prime;是一个有效的HTML 实体)怎么办?是什么让nbsp;与众不同? -
所以你有一个可以应用的规则?就像它们最后都包含撇号一样吗?因为据我所知,您有 3 组相关的字符串:html 代码、错误的特殊字符和正确的特殊字符。据我了解,您无法使用它们独有的规则集将这些组分开,以将它们单独列出。这意味着您需要一个通用规则来处理错误的特殊字符。比如“不以
&开头但以;结尾。 -
是的,你是对的。我正在寻找“不以 & 开头但以 ; 结尾”的规则它只隔离了上述三个相关字符串组中的错误特殊字符。
标签: regex regex-negation