正規表現を使用した数値文字列の検証
正規表現 "d " を使用して数値文字列を検証しようとすると、予期しない一致が発生しましたIP アドレスの場合。その理由を理解するために、正規表現のマッチングの詳細を詳しく見てみましょう。
「d」パターンは、0 ~ 9 の任意の 1 桁の数字と一致します。「d 」は、1 つ以上の任意の数字のシーケンスと一致します。これは簡単そうに見えますが、最初から最後までではなく、文字列の「内部」のみをチェックすることに注意することが重要です。
この例では、文字列 "78.46.92.168:8000" には一連の数字が含まれています。 ("78") が文字列の先頭にあります。したがって、「.」が存在するために文字列全体が数値でなくても、「d」はこのシーケンスと一致します。
解決策:
最初から最後まで数値である文字列を検証するには、次の式を使用できます:
以上が数値文字列を検証するときに「\d」が IP アドレスと一致するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。