我必须获取以[[{
开头并以}]]
结尾的所有字符串。我试着用:
'/^\[\[\{*$\}\}\]\]/'
但它不起作用。
基本上我必须获取嵌入HTML文档中的一些JSON字符串。
答案 0 :(得分:2)
你应该正确地放置锚。他们目前在错误的地方。这是正确的版本。您应该将其与preg_match_all(...)
:
/\[\[\{.*?\}\]\]/
答案 1 :(得分:2)
这是lookarounds的完美用法,您可以这样使用它们:
$re = '/(?=\[\[\{).*?(?<=\}\]\])/m';
preg_match_all($re, $str, $matches);
在此处,preg_match_all()
在$str
中搜索与$re
中给出的正则表达式匹配的所有内容,并将其放入$matches
。
<强> Regex101 Demo 强>