文字列が数値であるかどうかを確認するために正規表現を使用する場合、「d」パターンで十分であるように見えます。ただし、このパターンは意図せずに「78.46.92.168:8000」のような文字列と一致しますが、これは望ましくありません。
この動作は、「d」が文字列内の 1 つ以上の数字のシーケンスと一致するために発生します。指定された例では、最初の数字「78」と一致します。パターンが文字列全体と一致することを確認するには、文字列の先頭と末尾をチェックするようにパターンを変更する必要があります。
^\d+$
このパターンは、キャレット "^" 記号で始まり、文字列の始まりを示します。文字列であり、文字列の終わりを示すドル記号「$」で終わります。ここで、文字列に数字以外の文字が含まれている場合、パターンは一致しません。
代わりの、より簡単なアプローチは、文字列自体に "isdigital()" メソッドを使用することです。
"78.46.92.168:8000".isdigit()
このメソッドは、文字列に数字以外の文字が含まれている場合に False を返すため、文字列が有効な数値を表しているかどうかを効率的かつ正確に判断できます。
以上が数値をチェックするときに正規表現が文字列全体と一致することを確認するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。