IPアドレス(IPv4)の正規表現
正規表現のサンプルの中でIPアドレス(IPv4)にマッチする正規表現について解説します。
(Last modified: )
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)にマッチする正規表現について解説しました。
( Written by Tatsuo Ikura )
著者 / TATSUO IKURA
これから IT 関連の知識を学ばれる方を対象に、色々な言語でのプログラミング方法や関連する技術、開発環境構築などに関する解説サイトを運営しています。