PHP - 需要从文本填充数组

时间:2011-09-19 07:32:28

标签: php arrays string search

我需要从以[开头并以]结尾的字符串中的所有文字填充数组。

例如:

  

这里有一些文字[待办事项]和其他东西[/ find]   作品是[对象]和[tada]

这应该返回一个如下数组:

array('[to do]', '[/find]', '[object]', '[tada]');

我怎样才能快速完成?并按照文本中的顺序排列?

方括号内可以有任何字符。我只需要抓住它们,加上两个括号。

2 个答案:

答案 0 :(得分:1)

$subject = "here is some text [to do] and something else [/find] for the way this works is [object] and [tada]";
preg_match_all("/\[[^\[\]]+\]/", $subject, $out);
var_dump($out[0]);

答案 1 :(得分:0)

您可以使用preg_match_all

preg_match_all('/\[(.*?)\]/', $text_to_filter, $array);

$array将包含您的匹配。

但它不适用于嵌套的方括号。