~/devtools / regex / ip-address
tool::regex-guide

regex ip-address

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

IPv4アドレス検証

ad · 728×90
正規表現パターン
/^((25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/
フラグ:なし
パターン解析
^Start of string
25[0-5]250–255
2[0-4]\d200–249
1\d{2}100–199
[1-9]\d10–99
\d0–9
\.Literal dot separator
{3}Three octet+dot groups
$End of string
マッチ例
192.168.1.1
0.0.0.0
255.255.255.0
10.0.0.1
非マッチ例
256.0.0.1
192.168.1
192.168.1.1.1
abc.def.ghi.jkl

各オクテットが0〜255の範囲内にあることを確認することで、IPv4アドレスを正確に検証するパターンです。単純な\d{1,3}パターンとは異なり、256以上の誤った値を除外します。

言語別の使用方法

JavaScriptRegExpオブジェクトまたはリテラル構文を使用
const pattern = /^((25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/;

// Test a string
console.log(pattern.test("192.168.1.1")); // true
console.log(pattern.test("256.0.0.1")); // false

// Match and extract
const result = "192.168.1.1".match(pattern);
Pythonreモジュールを使用
import re

pattern = r"^((25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$"

# Test a string
if re.fullmatch(pattern, "192.168.1.1"):
    print("Valid")

# Find all matches in text
matches = re.findall(pattern, text)
Javajava.util.regexパッケージを使用
import java.util.regex.*;

String pattern = "^((25[0-5]|2[0-4]\\d|1\\d{2}|[1-9]\\d|\\d)\\.){3}(25[0-5]|2[0-4]\\d|1\\d{2}|[1-9]\\d|\\d)$";
Pattern p = Pattern.compile(pattern);

Matcher m = p.matcher("192.168.1.1");
boolean isValid = m.matches(); // true

// Find occurrences
Matcher finder = p.matcher(inputText);
while (finder.find()) {
    System.out.println(finder.group());
}

主なユースケース

  • サーバー設定ファイルのIPアドレス検証
  • ファイアウォールルール入力の検証
  • ログファイルからのIPアドレス抽出
  • ネットワークスキャナーの入力パラメータ検証
  • ユーザー入力IPアドレスの許可リスト確認

関連パターン

email/^[a-zA-Z0-9._%+\-]+@[a-zA-Z0-9.\-]+\.[a-/iphone/^\+?[\d\s\-\(\)]{7,15}$/url/^https?:\/\/[^\s\/$.?#].[^\s]*$/idate/^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[/
ad · 300×250
Regexテスターに戻る
// related tools
Cron Expression Generator
ビジュアルエディタでcron式を作成・解析。次回5回の実行時刻をプレビューし、よく使うプリセットから始められます。
jwt
JWT Decoder
JWTトークンをデコードして内容を確認。ヘッダー・ペイロード・署名の詳細を表示します。
Color Converter
HEX・RGB・HSL形式でカラーコードを変換。カラーピッカーで視覚的に選択できます。
ts
Timestamp Converter
Unixタイムスタンプを人間が読める日付に変換。ms/s・UTC/ローカル・相対時刻に対応。