查找占位符然后放入数组中

时间:2010-03-05 16:04:56

标签: php arrays placeholder

在我的字符串中,我有以下持有者:## NEWSLETTER ##,## FOOTER ### GOOGLEANALYTICS ## etc。

每个占位符都由以下分隔:##

我想找到每个占位符并将它们放在一个数组中。

棘手的部分是##分隔符内的内容可以是任何内容。

2 个答案:

答案 0 :(得分:3)

试试这个:

<?php

$s = "asdff ##HI## asdsad ##TEST## asdsadsadad";

preg_match_all("~##([^#]+)##~", $s, $result);

var_dump($result[1]);

打印:

array(2) {
  [0]=>
  string(2) "HI"
  [1]=>
  string(4) "TEST"
}

答案 1 :(得分:0)

您可以使用preg_match_all()

$str = '##NEWSLETTER## , some more text ##FOOTER## test 123 ##GOOGLEANALYTICS## aaa';
preg_match_all('/##([^#]+?)##/', $str, $matches);
var_dump($matches);

$matches[1]将拥有所有占位符