Проверка и валидация IP-адреса с помощью регулярных выражений
Следующее регулярное выражение проверяет допустимость адреса 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 static boolean validate(final String ip) {
return PATTERN.matcher(ip).matches();
}
Description:
^ #Début
( # Начало группы #1
[01]?\\d\\d? # Может состоять из одной или двух цифр. Если число больше 100, оно должно начинаться с 0 или 1
# например ([0-9], [0-9][0-9],[0-1][0-9][0-9])
| # ... or
2[0-4]\\d # начинается с 2, за которым следует 0-4 и заканчивается любой цифрой
| # ... or
25[0-5] # начинается с 2, за которым следует 5 и заканчивается на 0-5< /> ) # конец группы #2\. #, за которым следует точка "."
.... # повторить 3 раза (3x)
#fin