【PHP8.x】mb_ereg_search_getregs関数の使い方

作成日: 更新日:

mb_ereg_search_getregs関数は、マルチバイト正規表現の検索結果から、マッチした部分文字列を取得する関数です。この関数は、直前に実行された mb_ereg_searchmb_ereg_search_all といった関数による正規表現の検索において、パターンにマッチした具体的な文字列、特に正規表現内の括弧 () で指定された部分(サブマッチまたはキャプチャグループ)を効率的に取得するために使用されます。

正規表現では、文字列の中から特定のパターンを見つけ出すことができますが、mb_ereg_search_getregs 関数を使うと、見つかったパターン全体だけでなく、そのパターンの一部として指定した特定の情報だけを抽出し、配列として受け取ることが可能です。

具体的には、戻り値として返される配列の最初の要素(インデックス0)には、正規表現全体がマッチした文字列が格納されます。その後の要素(インデックス1以降)には、正規表現内で使用された各括弧 () がマッチした文字列が順に格納されます。これにより、例えば特定の形式のテキストから、日付、時間、ユーザー名といった個別の要素を抽出し、その後の処理で利用することが容易になります。

ただし、この関数は、mb_ereg_search などの関連関数が直前に正常に実行され、かつ文字列が正規表現パターンにマッチした場合にのみ意味のある結果を返します。もし直前の検索でマッチがなかった場合や、検索自体が行われていなかった場合は、期待する結果が得られない可能性がありますので注意が必要です。日本語などのマルチバイト文字を扱う正規表現処理において、非常に有用なツールとして活用されます。

基本的な使い方

構文(syntax)

<?php
// array|false mb_ereg_search_getregs()
$result = mb_ereg_search_getregs();
?>

引数(parameters)

引数なし

引数はありません

戻り値(return)

array|false

mb_ereg_search_getregs 関数は、直前の mb_ereg_search 関数による正規表現検索の結果としてマッチした部分文字列の配列、または検索に失敗した場合は false を返します。

【PHP8.x】mb_ereg_search_getregs関数の使い方 | いっしー@Webエンジニア