使用preg_split从'你好,你好'到[你好,你好吗]

时间:2009-06-22 21:50:23

标签: php regex pcre

我想将一个字符串分成两部分,字符串几乎是自由文本, 例如:

$string = 'hi how are you';

我希望拆分看起来像这样:

array(
    [0] => hi
    [1] => how are you
)

我尝试使用此正则表达式:/(\S*)\s*(\.*)/但即使返回的数组大小正确,值也会为空。

使这项工作成为必要的模式应该是什么?

2 个答案:

答案 0 :(得分:5)

有什么要求?你的例子似乎很随意。如果你想要的只是在第一个空格上拆分并且只剩下字符串的其余部分,那么就可以使用explode

$pieces = explode(' ', 'hi how are you', 2);

其中基本上说“拆分空格并将结果数组限制为2个元素”

答案 1 :(得分:0)

你不应该逃避“。”在最后一组。你试图匹配任何角色,而不是文字时期。

更正:/(\S*)\s*(.*)/