我有一个字符串
$style = "font-color:#000;font-weight:bold;background-color:#fff";
我只需要
font-color
font-weight
background-color
我试过了
preg_match_all('/(?<names>[a-z\-]+:)/', $style, $matches);
var_dump($matches);
它为我提供了以下输出
array
0 =>
array
0 => string 'font-color:' (length=11)
1 => string 'font-weight:' (length=12)
2 => string 'background-color:' (length=17)
'names' =>
array
0 => string 'font-color:' (length=11)
1 => string 'font-weight:' (length=12)
2 => string 'background-color:' (length=17)
1 =>
array
0 => string 'font-color:' (length=11)
1 => string 'font-weight:' (length=12)
2 => string 'background-color:' (length=17)
此输出有三个问题 它是二维或三维数组,我需要一维数组。 它正在重复这些信息 3.它在每个元素的末尾添加“:”。
我需要像这样的单个数组
array
0 => 'font-color'
1 => 'font-weight'
2 => 'background-color'
答案 0 :(得分:2)
取出冒号:
$style = "font-color:#000;font-weight:bold;background-color:#fff";
preg_match_all('/(?<names>[a-z\-]+):/', $style, $matches);
var_dump($matches['names']);
然后使用$matches['names']
,因为你命名它,所以你没有多余的信息