抱歉描述不清楚,我的英语不好。
我的问题是我想解码一个字符串,这个字符串有嵌套的内容由{}分隔 例如:
字符串:
{any string0{any string 00{any string 000....}}}{any string1}any string.
我想得到的结果:
array[0] = {any string0{any string 00{any string 000....}}}
array[1] = {any string1}
我希望它足够清楚。
答案 0 :(得分:4)
充分利用(奇怪的,并且希望很快就要编辑)的问题,下面以您的示例字符串为例,提供您的示例数组。
$subject = '{blah\blah{\blah\blah...{\bl....}}}{blah...}blah... ';
$pattern = '/\{(?>[^{}]++|(?R))*\}/';
preg_match_all($pattern, $subject, $matches);
print_r($matches[0]);
产生:
Array
(
[0] => {blah\blah{\blah\blah...{\bl....}}}
[1] => {blah...}
)