split

(PHP 3, PHP 4 >= 4.0.0)

split -- 正規表現により文字列を分割し、配列に格納する

説明

array split (string pattern, string string, int [limit])

文字列の配列を返します。配列の各要素は正規表現 patternにより区切られた string中の部分文字列です。 limitが指定された場合、返される配列には 最大limitの要素が含まれます。この場合、 最後の要素にはstringの残りの部分が全て 入っています。エラーを生じた場合、split()FALSEを返します。

/etc/passwdの行から最初の4つのフィールド を取り出すには、以下のようにします。

例 1split()の例


$passwd_list = split ( ":", $passwd_line, 5 );
      

スラッシュ、ドット、ハイフンをデリミタとすると日付を処理する例を 以下に示します。

例 2split()の例


$date = "04/30/1973";  // デリミタはスラッシュ、ドット、ハイフンのどれかです。
list ($month, $day, $year) = split ('[/.-]', $date);
echo "Month: $month; Day: $day; Year: $year<br>\n";
      

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()も参照下さい。