首页 > 解决方案 > 如何从以@开头的字符串中获取数组并以字符串中的空格结尾

问题描述

如何从下面的字符串中获取数组?
我需要 和 之间@的内容space

Gold star @RPXIeDIWVuTHFWGkaWbJEvv0KFk2 nice James @72oCu3zBCHQzS5fiY3KNFCWkgA53 for @DoxBay

我正在使用explode php函数

$output=explode("@",$title);
var_dump($output);

标签: phpregex

解决方案


听起来您会想要使用preg_match_all()从您的字符串中创建一个包含所有匹配项的数组。

这将获取您的字符串并将其与您的模式进行比较。它会将您要查找的结果放在匹配数组的第二个元素中。

像这样:

$str = 'Gold star @RPXIeDIWVuTHFWGkaWbJEvv0KFk2 nice James @72oCu3zBCHQzS5fiY3KNFCWkgA53 for @DoxBay ';

preg_match_all('/@(.*?)\s/', $str, $matches);

echo '<pre>';
print_r($matches[1]);
echo '</pre>';

这将输出:

Array
(
    [0] => RPXIeDIWVuTHFWGkaWbJEvv0KFk2
    [1] => 72oCu3zBCHQzS5fiY3KNFCWkgA53
    [2] => DoxBay
)

推荐阅读