匹配CSS不是评论

时间:2011-08-05 22:26:35

标签: php css regex

我知道有很多相关的问题,但似乎没有一个问题满足我的特定需求。

基本上,我需要匹配不是评论的CSS代码 我试过这个(先输入)

  

FOO

(?<!/\*)foo

但它无法与以下内容匹配:

/* foo

/* comment foo

此外,(?<!/\*\s*)foo会导致错误。

PS对于那些可能会问的人,我不需要关心字符串。

1 个答案:

答案 0 :(得分:2)

如果您正在使用的CSS是“有效”而您忽略字符串语法,则可以使用这样的廉价技巧:

foo(?!(?:[^/*]++|/(?!\*)|\*(?!/))*+\*/)

它做的是检查foo后面没有*/(之前没有任何/*)。

(如果您的PHP版本已过时且不支持,则可以删除所有格量词+。)