Php 查找占位符并将其放入数组中

Php 查找占位符并将其放入数组中,php,arrays,placeholder,Php,Arrays,Placeholder,在我的字符串中,有一些占位符,如:####时事通讯############页脚###########35 这些占位符中的每一个都由以下内容分隔:## 我想找到这些占位符中的每一个,并将它们放入一个数组中 棘手的是##分隔符中的内容可以是任何内容。您可以使用preg\u match\u all(): $matches[1]将包含所有占位符请尝试以下操作: <?php $s = "asdff ##HI## asdsad ##TEST## asdsadsadad"; preg_match_a

在我的字符串中,有一些占位符,如:####时事通讯############页脚###########35

这些占位符中的每一个都由以下内容分隔:##

我想找到这些占位符中的每一个,并将它们放入一个数组中


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

您可以使用
preg\u match\u all()

$matches[1]
将包含所有占位符

请尝试以下操作:

<?php

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

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

var_dump($result[1]);

请注意,如果希望能够匹配占位符中的单个“#”(例如“###TE#ST###)”,则应将regexp更改为##([^#][124;#[^#])+##
<?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"
}