我正在尝试在文档中搜索标记,以便稍后替换它们。
我正在使用preg_match,但遇到了一些困难。
preg_match('/\[.*\]/', $haystack, $matches);
搜索以下文字
[TODAY_DATE]
回复:付款需求
[地址] [ADDRESS_LINE_2] ...等
print_r($matches);
返回
Array ( [0] => [TODAY_DATE] )
如何调整我的正则表达式以返回所有匹配项?
答案 0 :(得分:4)
使用preg_match_all
。顾名思义,它不止一次匹配。
preg_match_all('/\[.*?\]/', $haystack, $matches);
var_dump($matches);
也使用不情愿的量词.*?
而不是贪婪的量词。