与正则表达式匹配的否定词

时间:2010-06-25 06:27:38

标签: html regex regex-negation

我希望能够构建一个正则表达式,在某些HTML代码中搜索特定模式,其中一个参数被否定(即找到x,其中y NOT 存在)。

示例:我想找到宽度不等于“500”的图像宽度参数。

  • width="640" height="360" 会匹配

  • width="500" height="360" 不匹配

我正在使用搜索&替换wordpress的插件来运行正则表达式 - http://urbangiraffe.com/plugins/search-regex - 它只使用通用的正则表达式语法

我能够匹配简单的查询,但我担心否定有点超出我的意愿 - 任何帮助都会非常感激。

谢谢 - 大卫

2 个答案:

答案 0 :(得分:2)

您需要使用negative lookahead

width="(?!500)([^"]+)"

答案 1 :(得分:1)

做出否定的正则表达方式将是负面的预测,请参阅here。这看起来像

<img [^>]*width=(?!"500")

但是,不使用正则表达式并使用HTML解析器会更容易且更少错误。