PHP で preg_match が「不明な修飾子 'g'」エラーをスローするのはなぜですか?

Mary-Kate Olsen
リリース: 2024-11-12 01:00:03
オリジナル
822 人が閲覧しました

Why Does preg_match Throw an

PHP で preg_match を使用する場合の「Unknown Modifier 'g' in...」エラーについて理解する

PHP で preg_match 関数を使用する場合PHP を使用しようとすると、「不明な修飾子 'g'」というエラー メッセージが表示されることがあります。正規表現の「g」修飾子。

正規表現の「g」修飾子は、通常、文字列内で出現するパターンをすべて検索するためのグローバル検索に使用されます。ただし、この修飾子を preg_match と組み合わせて使用​​すると、 preg_match は「i」と「m」のみをサポートしているため、この矛盾の背後にある理由は認識されていません。 modifiers.

この問題を解決し、preg_match を使用してグローバル検索を実行するには、代わりに preg_match_all 関数を使用する必要があります。この関数は、文字列内のパターンのすべての出現を照合して、必要なグローバルを提供することで preg_match の機能を拡張します。

したがって、指定したコード スニペットを修正してグローバル検索を実行するには、preg_match 関数を含む行を変更して使用します。 preg_match_all:

preg_match_all("/^(\w|\.|-)+?@(\w|-)+?\.\w{2,4}($|\.\w{2,4})$/im", ....)
ログイン後にコピー

適切な修飾子を付けて preg_match_all を利用すると、文字列内で出現する電子メール アドレス パターンをすべて見つけることができ、「不明な修飾子 'g' in...」エラー メッセージが表示されるのを回避できます。 .

以上がPHP で preg_match が「不明な修飾子 'g'」エラーをスローするのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート