我有一个字符串
$str = "[xyz.hlp] into asasa jkljk [xyp.htq] zff [xrt.thg]";
我想从字符串中获取字符并创建所有这些字符的数组。例如,对于上面提供的字符串,我应该得到像这样的数组
$array("xyz.hlp","xyp.htq","xrt.thg");
我尝试使用preg_match();像这样的东西,但它不起作用
preg_match('/\[(.*)\]/', $str , $Fdesc);
先谢谢
答案 0 :(得分:1)
你应该试试这个
$str = "[xyz.hlp] into asasa jkljk [xyp.htq] zff [xrt.thg]";
preg_match_all('/\[(.*?)\]/', $str , $Fdesc);
print_r($Fdesc[1]);
基于@sameerK提供的链接
答案 1 :(得分:0)
我得到了所需的输出但是通过使用循环和一些php字符串函数
<?php
$str = "[xyz.hlp] into asasa jkljk [xyp.htq] zff [xrt.thg]";
$i = 0;
while ($i != strrpos($str, "]")) {
$f_pos = strpos($str, "[", $i); // for first position
$l_pos = strpos($str, "]", $f_pos + 1); // for the last position
$value = substr($str, $f_pos, ($l_pos - $f_pos) + 1);
echo $value;
$i = $l_pos;
}
?>