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

作成日: 更新日:

mb_ereg_match関数は、マルチバイト文字列に対して正規表現によるパターンマッチングを実行する関数です。この関数はPHPのmb_regex拡張機能の一部であり、日本語のようなマルチバイト文字を含む文字列を扱う際に、文字エンコーディングを正しく考慮して正規表現の照合を行います。これにより、標準の正規表現関数で発生しうる文字化けや意図しないマッチングを防ぎ、より正確な文字列処理を可能にします。

mb_ereg_match関数は、最初の引数に検査対象の文字列、二番目の引数に正規表現パターンを受け取ります。正規表現パターンとは、特定のルールに基づいて文字列の中から一致する部分を探し出すための記述方法です。この関数は、与えられた正規表現パターンが、検査対象の文字列全体と完全に一致するかどうかを調べます。パターンが文字列全体に完全に一致した場合にtrueを返し、一致しない場合にはfalseを返します。

さらに、三番目のオプション引数として、正規表現の挙動を制御するオプション文字列を指定できます。例えば、「大文字小文字を区別しない」ことを意味するiオプションや、複数行モードを有効にするmオプションなどがあり、これにより柔軟なマッチング条件を設定できます。この関数は、Webアプリケーションなどでユーザーからの入力値を検証したり、特定の形式のデータを抽出したりする際に、特に日本語の氏名や住所など、マルチバイト文字を含むデータを扱う場面でその真価を発揮します。システムエンジニアを目指す方にとって、マルチバイト文字列の正確な処理は重要なスキルの一つであり、この関数はその基盤となります。

基本的な使い方

構文(syntax)

<?php
$pattern = 'hello';
$string = 'Hello';
$options = 'i'; // オプション: 大文字小文字を区別しない

$is_match = mb_ereg_match($pattern, $string, $options);
?>

引数(parameters)

string $pattern, string $string, ?string $options = null

  • string $pattern: マッチングに使用する正規表現パターン
  • string $string: マッチング対象の文字列
  • ?string $options = null: オプションを指定する文字列。指定しない場合はnull。

戻り値(return)

bool

正規表現パターンが文字列にマッチしたかどうかを示す真偽値を返します。マッチした場合はtrue、マッチしなかった場合はfalseを返します。

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