Skip to content

Instantly share code, notes, and snippets.

@Pr1meSuspec7
Last active September 30, 2024 15:01
Show Gist options
  • Save Pr1meSuspec7/d6154c4f9b01d2ea80cd5fd51ddfb8eb to your computer and use it in GitHub Desktop.
Save Pr1meSuspec7/d6154c4f9b01d2ea80cd5fd51ddfb8eb to your computer and use it in GitHub Desktop.
Function for check if input is an ipv4 address.
# regex to match ipv4
# (?:[0-9]{1,3}\.){3}[0-9]{1,3}
# v1
def check_if_ipv4(ip):
quad = ip.split(".")
quadinteger = []
try:
quadinteger = [int(num) for num in quad]
except ValueError:
#print('ERROR: Must be an ipv4 address')
return
while len(quadinteger) != 4:
#print('ERROR: Must be four octects')
return
for octect in quadinteger:
if octect > 255 or octect < 0:
#print('ERROR: Each octects must be beetween 0 and 255')
return
return ip
# v2
import re
ip_pattern = re.compile(r'(?:(?:25[0-5]|2[0-4][0-9]|1?[0-9]?[0-9])\.){3}'
r'(?:25[0-5]|2[0-4][0-9]|1?[0-9]?[0-9])')
def validate_ip(s):
if ip_pattern.match(s):
return True
return False
assert validate_ip(ip), 'Invalid IP Address'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment