ホームページ >バックエンド開発 >PHPチュートリアル >PHP で preg_match を使用すると「Unknown Modifier 'g' in...」エラーが発生するのはなぜですか?

PHP で preg_match を使用すると「Unknown Modifier 'g' in...」エラーが発生するのはなぜですか?

DDD
DDDオリジナル
2024-11-30 14:55:16486ブラウズ

Why Am I Getting

PHP で preg_match を使用すると、「不明な修飾子 'g' in...」エラーが発生します?

preg_match を使用しようとしたとき正規表現一致の関数を使用すると、「不明な修飾子 'g'」を示すエラーが発生する場合があります。この問題は、次の場合に発生します。グローバル マッチングを指定する 'g' 修飾子が正規表現に追加されます。

エラーについて

PHP は preg_match の 'g' 修飾子を提供しません代わりに、グローバルマッチングには preg_match_all 関数を使用する必要があります。

解決策

この問題を修正してグローバル マッチングを実行するには、コード内の preg_match を preg_match_all に置き換えるだけです。

変更した正規表現は次のようになります。 >
preg_match_all("/^(\w|\.|-)+?@(\w|-)+?\.\w{2,4}($|\.\w{2,4})$/im", ...)

覚えておいてください、「i」修飾子は大文字と小文字を区別しない一致を保証しますが、 「m」修飾子を使用すると、複数行の文字列一致が有効になります。

以上がPHP で preg_match を使用すると「Unknown Modifier 'g' in...」エラーが発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。