正则表达式仅在{display:none}

时间:2016-09-28 08:03:23

标签: php regex

我找不到正确的正则表达式来提取类名。 这是我的代码:

preg_match_all('@\.(.*!\.){display:none}@', '.UlEa{display:none}.RNLW{display:inline}.jc0k{display:none}.Lyhf{display:inline}', $matches);

$匹配为空。 怎么看正确的正则表达式?

1 个答案:

答案 0 :(得分:2)

请注意,您的正则表达式与文字.匹配,然后尽可能多地捕获除了换行符号之外的任何0+字符的序列,直到最后!.序列,然后匹配{{1} }。由于您的文字不包含{display:none},因此您的文字不包含!

获得匹配的一种方法是在第1组中使用.(=一个或多个单词字符,\w+集中的字符)模式:

[a-zA-Z0-9_]

请参阅regex demo

PHP demo

\.(\w+){display:none}