regex c# ip adress
почему проверка не работает? Правильно ли я понимаю что [0-255] означает любое число от 0 до 255?
на картинке не совсем видно, я ввожу 6.7.7.8
Ответы (1 шт):
Автор решения: Yotic
→ Ссылка
Вы используете неправильный синтаксис Regex, я нашёл нормальный Regex под IPv4 -
Regex r = new Regex(@"^((1\d\d|2([0-4]\d|5[0-5])|\d\d?)\.?){4}$");
Для проверки использовал:
Regex r = new Regex(@"^((1\d\d|2([0-4]\d|5[0-5])|\d\d?)\.?){4}$");
string text1 = "128.0.0.1";
string text2 = "256.0.0.1";
string text3 = "0.0.0.0";
string text4 = "255.255.255.255";
string text5 = "255:228:0:0";
Console.WriteLine(r.IsMatch(text1)); //True
Console.WriteLine(r.IsMatch(text2)); //False
Console.WriteLine(r.IsMatch(text3)); //True
Console.WriteLine(r.IsMatch(text4)); //True
Console.WriteLine(r.IsMatch(text5)); //False
