Überprüfen und Validieren einer IP-Adresse mit regulären Ausdrücken

Der folgende reguläre Ausdruck prüft die Gültigkeit einer IPv4.
private static final Pattern PATTERN = Pattern.compile(
"^(([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\.) {3} ([01]?\\d\\d?|2[0-4]\\d|25[0-5])$");

public statisch boolescher Wert validate(final String ip) {
return PATTERN.matcher(ip).matches();
}

Description:

^ #Début
( # Start der Gruppe #1
[01]?\\d\\d? # Kann ein- oder zweistellig sein. Wenn die Zahl größer als 100 ist, sollte sie mit einer 0 oder 1
# beginnen, z. B. ([0-9], [0-9][0-9],[0-1][0-9])
| # ... or
2[0-4]\\d # beginnt mit 2, gefolgt von 0-4 und endet mit einer beliebigen Ziffer
| # ... or
25[0-5] # beginnt mit 2, gefolgt von 5 und endet mit 0-5< /> ) # Ende der Gruppe #2 \. # gefolgt von einem Punkt "."
.... # 3 mal wiederholen (3x)
#fin