php preg_match 在两个模式之间查找字符串

问题描述 投票:0回答:1

我有这个字符串:

1 x red 1 x blue 3 x yellow

我想把它变成:

1 x red
1 x blue
3 x yellow

请问我该怎么做?我尝试过使用 php preg_match 但没有运气

$description = "1 x red 1 x blue 3 x yellow";
preg_match('/[0-9] x (.*?){[0-9] x /',$description,$matches);
var_dump($matches);
php preg-match
1个回答
0
投票

我会使用

preg_match_all()
,然后只提供单个实体的模式:

$str = '1 x red 1 x blue 3 x yellow';
preg_match_all('/\d+\s+x\s+\S+/', $str, $matches);
print_r($matches);
Array
(
    [0] => Array
        (
            [0] => 1 x red
            [1] => 1 x blue
            [2] => 3 x yellow
        )

)
© www.soinside.com 2019 - 2024. All rights reserved.