我想匹配[[WHATEVER]]之类的所有模式
这两个方括号内的文本可以是大写或小写,可以以空格开头或以空格结尾,并且可以由两个或多个用空格分隔的单词组成
$string = "The [[QUICK]] brown [[FOX]] jumped over [[whatever]]";
parse $string; //I would like an result to be like array
array( 0 => "[[QUICK]]", 1 => "[[FOX]]", 2 => "[[whatever]]")
解决方法:
您可以像这样匹配它们:
$re = "/\\[{2}.*?\\]{2}/";
$str = "The [[QUICK]] brown [[FOX]] jumped over [[whatever]]";
preg_match_all($re, $str, $matches);
print_r($matches[0]);
Array
(
[0] => [[QUICK]]
[1] => [[FOX]]
[2] => [[whatever]]
)
标签:arrays,string,parsing,php,regex
来源: https://codeday.me/bug/20191028/1952569.html