Php 查找占位符并将其放入数组中
在我的字符串中,有一些占位符,如:####时事通讯############页脚###########35 这些占位符中的每一个都由以下内容分隔:## 我想找到这些占位符中的每一个,并将它们放入一个数组中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
棘手的是##分隔符中的内容可以是任何内容。您可以使用
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"
}