ホームページ  >  記事  >  バックエンド開発  >  PHP 正規表現を使用して IP アドレス セグメントの入力を検証する方法

PHP 正規表現を使用して IP アドレス セグメントの入力を検証する方法

PHPz
PHPzオリジナル
2023-06-24 12:20:371399ブラウズ

インターネットの急速な発展に伴い、IP アドレスの適用はますます広範囲に広がっています。 Web アプリケーション開発では、入力の有効性を検証するために IP アドレスを使用することが必要になることがよくあります。 PHP の正規表現を使用すると、IP アドレスの有効性を迅速かつ正確に検証できるため、プログラムの安定性とセキュリティが向上します。

この記事では、PHP 正規表現を使用して IP アドレス セグメントの入力を検証する方法を紹介しますので、初心者の方の参考になれば幸いです。

1. IP アドレス セグメントの形式

IP アドレスは、ドット「.」で区切られた 4 桁の 10 進数で構成されます。例: 192.168.0.1。

PHP では、次のルールを使用して IP アドレス セグメントの形式を確認できます:

1. 4 つの数値、各数値は 0 ~ 255 の値です。

2. 各数字はピリオド「.」で結ばれています。

したがって、正規表現を使用して、入力された IP アドレスがそのような形式ルールに準拠しているかどうかを確認する必要があります。

2. PHP 正規表現の基本構文

PHP では、正規表現はスラッシュ "/" で識別される文字列です (例: "/pattern/")。

正規表現の基本的な構文は次のとおりです:

1. 文字の一致 (例: "/abc/" は文字列内の "abc" と一致することを意味します);

2.文字クラス、例: "[a-z]" は文字列内の小文字の一致を意味します;

3. 量子、例: "a{3}" は文字列内の 3 つの連続する文字 "a" の一致を意味します。

4. グループ化 (例: "/(abc){2}/") は、連続して 2 回出現する "abc" と一致することを意味します。

3. IP アドレス セグメントの入力を検証するための PHP 正規表現

まず、以下に示すように、IP アドレスの有効性を検証する関数を定義する必要があります。

function isValidIPAddress($ip) {
    $regex = "/^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/";
    return preg_match($regex, $ip);
}

上記のコードでは、$regex は IP アドレス検証ルールを含む正規表現です。入力された IP アドレスがこのルールに準拠している場合、関数は値 true を返し、そうでない場合、関数は値 false を返します。

次に、この正規表現のルールを注意深く分析してみましょう:

1, "^": 一致する文字列の先頭を示します;

2, "( (25 [0-5]|20-4|[01]?0-9?).)":

(1) "25[0-5 ] のうち、最初の 3 つの IP アドレスが一致することを示します。 " は 250 ~ 255 の数字に一致することを意味します;

(2) "20-4" は 200 ~ 249 の数字に一致することを意味します;

(3) "[01]? 0-9?"は、01、02、03 などを含む 0 ~ 199 の数字と一致することを意味します;

(4) "." はピリオド "." と一致することを意味します;

3 , "(25[ 0-5]|20-4|[01]?0-9?)$": 最後の IP アドレス セグメントの一致を示します。ここで:

(1) "25[0- 5]" は一致を意味します250 ~ 255 の数値;

(2) "20-4" は 200 ~ 249 の数値の一致を意味します;

(3) "[01] ?0-9?" は数値の一致を意味します0 ~ 199 (01、02、03 などを含む);

(4) 「$」は文字列の末尾と一致することを意味します。

この正規表現を使用すると、IP アドレスの有効性を迅速かつ正確に検証し、プログラムの安定性とセキュリティを向上させることができます。同時に、開発者による IP アドレスの操作と適用も容易になります。

概要:

Web アプリケーション開発では、IP アドレスの検証はアプリケーションの基本要件です。 PHP の正規表現を使用すると、IP アドレスの有効性を迅速かつ正確に検証できるため、プログラムの安定性とセキュリティが向上します。この記事の紹介を通じて、初心者が PHP 正規表現を使用して IP アドレス セグメントの入力を検証する方法をよりよくマスターできることを願っています。

以上がPHP 正規表現を使用して IP アドレス セグメントの入力を検証する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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