无论白色空间有多长,我怎样才能用空格分割字符串?
例如,来自以下字符串:
"the quick brown fox jumps over the lazy dog"
我会得到一个
数组['the', 'quick', 'brown', 'fox', 'jumps', 'over', 'the', 'lazy', 'dog'];
答案 0 :(得分:6)
您可以使用正则表达式轻松完成此操作:
$string = 'the quick brown fox jumps
over the
lazy dog';
$words = preg_split('/\s+/', $string, -1, PREG_SPLIT_NO_EMPTY);
print_r($words);
这会产生此输出:
Array
(
[0] => the
[1] => quick
[2] => brown
[3] => fox
[4] => jumps
[5] => over
[6] => the
[7] => lazy
[8] => dog
)
答案 1 :(得分:2)
使用正则表达式:
$str = "the quick brown fox jumps over the lazy dog";
$a = preg_split("~\s+~",$str);
print_r($a);
请注意:我修改了你的字符串,在前两个单词之间包含了很多空格,因为这就是你想要的。
输出:
Array ( [0] => the [1] => quick [2] => brown [3] => fox [4] => jumps [5] => over [6] => the [7] => lazy [8] => dog )
这是如何运作的:
\s+
表示一个或多个空格字符。它是分隔字符串的分隔符。请注意,“空白字符”所指的PCRE不仅仅是通过按空格键获得的字符,还包括制表符,垂直制表符,回车符和新行。这应该完全符合您的目的。
<强>参考强>