0

文字列を 2 つの部分に分割したいのですが、文字列はほとんど自由なテキストです。たとえば、次のようになります。

$string = 'hi how are you';

そして、分割を次のようにしたい:

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

この正規表現を使用してみました:/(\S*)\s*(\.*)/しかし、返された配列が正しいサイズであっても、値は空になります。

これを機能させるために必要なパターンは何ですか?

4

2 に答える 2

5

要件は何ですか?あなたの例はかなり恣意的なようです。最初のスペースで分割し、残りの文字列をそのままにしておくことだけが必要な場合は、次を使用してそれを行いますexplode

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

これは基本的に「スペースで分割し、結果の配列を2つの要素に制限する」と言っています

于 2009-06-22T21:52:10.083 に答える
0

「。」をエスケープしないでください。最後のグループで。リテラルのピリオドではなく、任意の文字に一致させようとしています。

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

于 2009-06-22T21:53:03.407 に答える