我有这样的文字
Hello {{xyz}} how are {{abc}. I am {opq}} for your {{bpq}}.
从此文字中我只想找到除{{abc}
和{opq}}
之外的{{xyz}}
和{{bpq}}
。什么是php
的正则表达式。
我试过这个
preg_match_all("/\{{(.*?)\}}/", $mytext, $matches);
答案 0 :(得分:1)
您可以在PHP中使用此正则表达式使用PCRE动词(*SKIP)(*F)
,该动词用于在交替中跳过+失败匹配。
{{[^{}]*}}(*SKIP)(*F)|{{[^{}]*}|{[^{}]*}}
或者,您还可以使用基于环视的正则表达式:
{{[^{}]*}(?!})|(?<!{){[^{}]*}}
(?!})
是未通过匹配的否定预测
如果先前的字符为{(?<!})
为比赛失败的负面观察