Я пытаюсь проверить ввод, чтобы увидеть, если это действительный IP-адрес (может быть частичным).
Допустимый ввод: 172, 172.112, 172.112.113, 172.112.113.114
Недопустимый ввод: 1724,172.11113 и т. Д. И т. Д.
Вот функция, которую я создал для проверки (однако он подтверждает недопустимый ввод, такой как 1724, который я не могу исправить .. пожалуйста, помогите)
def ipcheck(ip):
ippattern_str = '(([1-2]?[\d]{1,2}\.?){0,1}(\.[1-2]?[\d]{1,2}){0,1}(\.[1-2]?[\d]{1,2}\.){0,1}(([1-2]?[\d]{1,2}[\D\W]*)'
ippattern = re.compile(ippattern_str)
# ippattern is now used to call match, passing only the ip string
global matchip
matchip = ippattern.match(ip)
return matchip
ip = sys.argv[1]
ipcheck(ip)
print matchip
Я чувствую, что, возможно, мне нужно правильно использовать якоря?Я попробовал все, насколько мне известно, любая помощь будет оценена.