注意 Perl互換の正規表現構文を使用する preg_split() は、往々にして split() よりも速い代替案となりま す。
文字列の配列を返します。配列の各要素は正規表現
pattern
により区切られた
string
中の部分文字列です。
limit
が指定された場合、返される配列には 最大
limit
の要素が含まれます。この場合、 最後の要素には
string
の残りの部分が全て 入っています。エラーを生じた場合、
split()
は
FALSE
を返します。
/etc/passwd
の行から最初の4つのフィールド を取り出すには、以下のようにします。
ティップ pattern が n 回現 れる場合、返される配列には、 n +1 個のアイテムが 含まれます。例えば、 pattern が現れない場合、 1個の要素のみを有する配列が返されます。もちろん、これは string が空の場合も同様です。
スラッシュ、ドット、ハイフンをデリミタとすると日付を処理する例を 以下に示します。
pattern
は大文字小文字を区別することに 注意してください。
正規表現の機能を必要としない場合、正規表現エンジンのオーバーヘッ ドがない
explode()
の方がより高速であるというこ とに注意して下さい。
Perlの
$chars = split('', $str)
の動作を模擬する 手段を探しているユーザーについては、
preg_split()
の例を参照下さい。
pattern
は正規表現であることに注意して下さ い。正規表現で特殊文字とみなされる文字を分割したい場合、それらを
まずエスケープする必要があります。
split()
(ま たは他の正規表現関数に関して)の動作が何か変であると感じたならば、 PHP配布ファイルの
regex/
サブディレクトリにあるファイル
regex.7
を読んで下さい。このファイルは manpageフォーマットとなっており、読むには
man /usr/local/src/regex/regex.7
のようにします。
preg_split()
,
spliti()
,
explode()
,
implode()
,
chunk_split()
,
wordwrap()
も 参照下さい。