IPアドレス(IPv4)の正規表現

広告

正規表現のサンプルの中でIPアドレス(IPv4)にマッチする正規表現について解説します。

(2021 年 08 月 23 日公開 / 2021 年 08 月 23 日更新)

IPアドレス(IPv4)にマッチする正規表現

IP アドレス( IPv4 )は次のような値となります。

255.255.255.255

IP アドレス( IPv4 )にマッチする正規表現は次のようになります。

^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])$

以下解説と前提条件です。

IP アドレス( IPv4 )は 0 から 255 までの数字がドット(.)を挟んで 4 回続く形になります。 0 から 255 の数字は 250 から 255、 200 から 249 、100 から 199 、 0 から 99 、にそれぞれ分けて次のように正規表現で表すことができます。

(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])

0 から 255 までの数字を 4 回、それぞれをドット(.)で結び、これに文字列の先頭にマッチするキャレット(^)と文字列の末尾にマッチするドル記号を($)を追加して組み合わせたものが IP アドレス( IPv4 )を表す正規表現となります。

サンプル

JavaScript を使って簡単な正規表現のサンプルを作成してみます。

const regex = /^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])$/;

regex.test('192.168.0.24');
--> true
regex.test('255.255.255.0');
--> true
regex.test('10.44.36');
--> false // 最後のブロックがない
regex.test('255.128.302.4');
--> false // 3つ目のブロックが範囲外

IPアドレス(IPv4)にマッチする正規表現(1)

-- --

正規表現のサンプルの中でIPアドレス(IPv4)にマッチする正規表現について解説しました。

( Written by Tatsuo Ikura )

関連記事 (一部広告含む)
Profile
profile_img

著者 / TATSUO IKURA

初心者~中級者の方を対象としたプログラミング方法や開発環境の構築の解説を行うサイトの運営を行っています。