我知道有很多相关问题,但似乎没有一个可以满足我的特定需求。
基本上,我需要匹配不是注释的CSS代码。
我已经试过了(先输入)
富
(?<!/\*)foo
但它不符合以下条件:
/* foo
和
/* comment foo
同样,
(?<!/\*\s*)foo
也会导致错误。PS对于那些可能会问的人,我不需要关心字符串。
最佳答案
如果您正在使用的CSS是“有效的”并且您忽略了字符串语法,则可以使用这样的廉价技巧:
foo(?!(?:[^/*]++|/(?!\*)|\*(?!/))*+\*/)
它的作用是检查foo后面是否没有
*/
(在其前面没有任何/*
)。(如果您的PHP版本已过时并且不支持所有格限定符
+
,则可以将其删除。)关于php - 匹配没有评论的CSS,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6963255/