{category}

PHP - 正規表現

preg_split()

プレグスプリット(データ操作と変換

意味 正規表現で文字列を分割


preg_split()とは?

preg_split()は、指定した正規表現パターンを区切り文字として文字列を分割し、結果を配列として返す関数です。複雑な条件での文字列の分割に役立ちます。

preg_split()の具体的な使い方

複雑な区切り文字で文字列を分割

$text = 'apple,banana;cherry:grape|melon\orange';
$fruits = preg_split('/[,;:|\\]/', $text);
print_r($fruits);

👇出力結果

Array
(
    [0] => apple
    [1] => banana
    [2] => cherry
    [3] => grape
    [4] => melon
    [5] => orange
)

この例では、カンマ、セミコロン、コロン、パイプ、バックスラッシュのいずれかを区切り文字として文字列を分割しています。複数の異なる区切り文字を同時に扱える点が preg_split() の強みです。

正規表現を使用した高度な分割

$text = 'The quick brown fox jumps over the lazy dog';
$words = preg_split('/\s+/', $text);
$result = array_map(function($word) {
    return strlen($word);
}, $words);
print_r($result);

👇出力結果

Array
(
    [0] => 3
    [1] => 5
    [2] => 5
    [3] => 3
    [4] => 5
    [5] => 4
    [6] => 3
    [7] => 4
    [8] => 3
)

この例では、まず文字列を空白文字(スペース、タブ、改行など)で分割し、各単語の長さを計算しています。preg_split() と array_map() を組み合わせることで、テキスト解析のような高度な処理が可能になります。

preg_split()に関するよくある質問

Q. preg_split()の基本的な使い方は?
A. preg_split()の基本的な構文は preg_split(pattern, subject) です。patternは分割に使用する正規表現パターン、subjectは分割する文字列です。結果は配列として返されます。
Q. 分割の回数を制限できますか?
A. はい、preg_split()の第3引数で分割の最大回数を指定できます。例: preg_split('/,/', $string, 3) とすると、最大3つの要素に分割されます。
Q. 空の要素を除外する方法は?
A. preg_split()の第4引数に PREG_SPLIT_NO_EMPTY フラグを指定することで、空の要素を結果から除外できます。

preg_split()が学べる書籍の紹介

「プログラミング単語帳」を使って、プログラミングの単語を英単語のように学習してみませんか?
プログラミング単語帳には、PHPのpreg_split()やabs()、mb_strlen()、preg_replace()、などのような実務でよく使われる単語が数百以上収録されています。
この書籍には、プログラミングの単語の意味や読み方、単語の使い方がわかる例文などが掲載されており、いつでもどこでもプログラミングの学習ができます。

よく使われる単語にだけ絞って学習することができるので、効率的にプログラミングが学習できます。

1日5分の暗記でプログラミンが身に付く!プログラミング単語帳 公式ストアで発売中!

HTML編、CSS編、JavaScript編、PHP編、Ruby編、その他単語編の6シリーズ分が公式ストアにて販売中です。気になった方はぜひ購入してみてください。


PHPを学べる「プログラミング単語帳」アプリ

プログラミング単語帳がアプリになりました!PHPはもちろん、10種類のプログラミング言語の中から、よく使われる単語をスマホで学習できます。

収録単語は2,000単語以上!
現在は、HTML、CSS、JavaScirpt、PHP、Laravel、Ruby、Python、MySQL、Linux、など10カテゴリーの単語帳が1つのアプリに収録されています。

いつでも、どこでも、隙間時間を有効活用して、プログラミングを効率的に学べるので、ぜひダウンロードしてみてください。

2024年7月アップデート情報:「Laravel」カテゴリーが追加されましました!

2024年8月アップデート情報:「MySQL」「Linux」カテゴリーが追加されましました!


関連するそのほかの単語

abs()

数値の絶対値を取得

種類: 数学関数

mb_strlen()

マルチバイト文字列の長さを取得

種類: マルチバイト文字列

preg_replace()

正規表現で置換を行う関数

種類: 正規表現

password_hash()

パスワードを安全に保存

種類: パスワードハッシュ

array_push()

配列の末尾に要素を追加

種類: 配列関数