- トップページ
- PHPの文字列関連のサンプルコード
- preg_match_all()
PHPのpreg_match_all()関数のサンプルコード
説明指定した文字列から繰り返し正規表現による検索を行います。1つ目の引数には検索文字列、2つ目の引数には検索元の文字列、3つ目の引数には検索結果を格納する変数を指定、4つ目の引数にはフラグを指定します(3つ目、4つ目の引数は省略可能)。返り値にはマッチした場合は1、1つもマッチしなかった場合は0が返されます。PREG_OFFSET_CAPTUREフラグは3つ目の引数の値として、各マッチに対応する文字列のオフセットが2次元配列で返されます。
サンプルコード
//aタグからアンカーテキストとリンク先URLを検索
$str = '<p><a href="https://execphp.com">PHPオンライン実行</a></p><p><a href="https://mogcy.com">モグシー</a></p>';
$pattern = '/<a\s+href="(.*)">(.*)<\/a>/U';
preg_match_all($pattern, $str, $matches1);
print_r($matches1);
echo "\n-----------------------------------------------------------------------------\n";
echo "※PREG_OFFSET_CAPTUREフラグあり\n\n";
preg_match_all($pattern, $str, $matches2, PREG_OFFSET_CAPTURE);
print_r($matches2);
PHPバージョン8.2
使い方
任意のPHPのコードをWeb上で実行して実行結果を確認できる無料のPHPコードエディタアプリです。
コード欄にPHPのコード(<?phpと?>は不要)を記述して、実行ボタンをクリックしてください。
PHPのソースコードをphpコマンドで実行するのと同じような感覚で実行結果が下のテキストエリアに表示されます。
また、関数の自動補完(2文字目を入力した時点で関数候補を表示)やコードエディタの背景色の変更も可能です。
外出中など手元にPCが無い場合の学習や、ちょっとしたコードのチェックなどに是非ご活用ください。
注意
無限ループや処理に時間がかかるコードを実行した場合、約1秒でタイムアウトしその時点の結果を出力します。
なるべく高い負荷のかかるコードの実行はご遠慮ください。
注意
画面解像度 1366×768 以上での利用を推奨します。