2

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

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

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

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

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

我能够匹配简单的查询,但恐怕否定有点超出我的能力 - 任何帮助将不胜感激。

谢谢 - 大卫

4

2 回答 2

2

您需要使用负前瞻

width="(?!500)([^"]+)"
于 2010-06-25T06:32:39.853 回答
1

进行否定的正则表达式方式将是负前瞻,请参见此处。这看起来像

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

但是,不使用正则表达式而使用 HTML 解析器会更容易,更不容易出错。

于 2010-06-25T06:34:03.310 回答