PHP preg_match_all匹配任何单词边界

时间:2016-02-25 14:21:43

标签: php regex preg-match-all

我试图将每个吉他和弦捕捉到$output array但是我没有运气。它们被多个空间包围:

$text = "F#m     Em   Asus   G";        
$result = preg_match_all('/\w/',$text,$output);
print_r($output); 

我的预期$output是:

Array
(
    [0] => Array
        (
            [0] => F#m
            [1] => Em
            [2] => Asus
            [3] => G
        )

)

2 个答案:

答案 0 :(得分:2)

您可以使用preg_split

$text = "F#m     Em   Asus   G";        
$result = preg_split('/\s+/', $text);
print_r($result); 

答案 1 :(得分:1)

这样的事情怎么样?

    $text =  "F#m     Em   Asus   G";
    $parsedString = preg_replace ("/ +/", " ", $text);
    $result = explode(' ', $parsedString);

    var_dump($result);

输出

array (size=4)
    0 => string 'F#m' (length=3)
    1 => string 'Em' (length=2)
    2 => string 'Asus' (length=4)
    3 => string 'G' (length=1)
相关问题