ホームページ >バックエンド開発 >PHPチュートリアル >PHPの正規表現関数preg_match()の使い方の詳しい説明
PHP は、Web 開発に広く使用されているサーバー側スクリプト言語であり、文字列や正規表現を処理する関数を含む豊富な関数ライブラリを提供します。この記事では、PHP で正規表現を照合するために使用される関数の 1 つである preg_match() 関数の使用に焦点を当てます。
1. preg_match() 関数の定義
preg_match() 関数は、PHP で正規表現を照合するために使用される関数の 1 つです。この関数は、文字列内の正規表現パターンに一致する部分文字列があるかどうかを取得し、その結果を配列に格納するために使用され、戻り値は一致した数です。関数は次のように定義されます:
preg_match(pattern, subject,matches)
pattern: 正規表現パターン (例: '/^[a-zA-Z0) -9_] $/'。
subject: 照合する文字列 (「hello world」など)。
matches: 一致結果を格納する配列。省略することも、関数の外で定義してから最初に記述することもできます。
2. 正規表現の構文
preg_match() 関数を使用する前に、正規表現の構文を理解する必要があります。正規表現は、パターンを照合し、文字列の特性を説明するために使用される文字のシーケンスです。一般的に使用される正規表現構文の一部を次に示します。
^: 文字列の先頭と一致することを示します。
$: 一致する文字列の終わりを示します。
.: 任意の文字と一致します。
##: 0 回以上出現する前の文字と一致します。 : 1 回以上出現する前の文字と一致します。 ?: 0 回または 1 回出現する前の文字と一致し、オプションのオプションを示します。 []: 角括弧内の任意の文字と一致します。「[abc]」は、a、b、c の任意の文字と一致することを意味します。 d: 番号を一致させます。 D: 数字以外と一致します。 w: 任意の文字、数字、アンダースコアと一致します。 W: 文字、数字、アンダースコア以外の文字と一致します。 3. preg_match() 関数の使用例次に、preg_match() 関数の使用例をいくつか示します。 例 1: 携帯電話番号の一致$pattern = '/^1[3456789]d{9}$/'; $subject = '13888888888'; if (preg_match($pattern, $subject, $matches)) { echo '匹配成功!'; } else { echo '匹配失败!'; }例 2: 電子メール アドレスの一致
$pattern = '/^w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$/'; $subject = 'example@example.com'; if (preg_match($pattern, $subject, $matches)) { echo '匹配成功!'; } else { echo '匹配失败!'; }例 3: URL アドレスの一致
$pattern = '/^((https|http|ftp|rtsp|mms)?://)[^s]+/'; $subject = 'http://www.example.com'; if (preg_match($pattern, $subject, $matches)) { echo '匹配成功!'; } else { echo '匹配失败!'; }例 4: 一致漢字
$pattern = '/^[u4e00-u9fa5]+$/'; $subject = '中国汉字'; if (preg_match($pattern, $subject, $matches)) { echo '匹配成功!'; } else { echo '匹配失败!'; }4. preg_match() 関数の注意事項preg_match() 関数を使用する場合、いくつかの注意事項があります。関数は実行後に正常に戻ります。値は 1 で、失敗した場合は 0 または false を返します。 一致結果が複数ある場合は、最初に一致した結果のみが配列に格納されます。
以上がPHPの正規表現関数preg_match()の使い方の詳しい説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。