正则表达式 字符串取反

可以使用 断言 实现

正则表达式的先行断言和后行断言一共有4种形式:
(?=pattern) 零宽正向先行断言(zero-width positive lookahead assertion)
(?!pattern) 零宽负向先行断言(zero-width negative lookahead assertion)
(?<=pattern) 零宽正向后行断言(zero-width positive lookbehind assertion)
(?<!pattern) 零宽负向后行断言(zero-width negative lookbehind assertion)
这里面的pattern是一个正则表达式。

$pattern = "/<p>((.(?!<p>))*)</p>/";

$str = "<p>ggfgfhhghgh&nbsp;</p><p>ggfgfhhghgh&nbsp;</p>";

$res = preg_match_all($pattern, $str, $matches);
原文地址:https://www.cnblogs.com/isykw/p/7145506.html