Search code examples
pythonregexip-addressmac-address

regular expression for ipaddress and mac address


can anyone suggest me the regular expression for ip address and mac address ?

i am using python & django

for example , http://[ipaddress]/SaveData/127.0.0.1/00-0C-F1-56-98-AD/

for mac address i tried following but didn't work

([0-9A-F]{2}[:-]){5}([0-9A-F]{2})

^([0-9A-F]{2}[:-]){5}([0-9A-F]{2})$

Solution

  • import re
    s = "http://[ipaddress]/SaveData/127.0.0.1/00-0C-F1-56-98-AD/"
    
    re.search(r'([0-9A-F]{2}[:-]){5}([0-9A-F]{2})', s, re.I).group()
    '00-0C-F1-56-98-AD'
    
    re.search(r'((2[0-5]|1[0-9]|[0-9])?[0-9]\.){3}((2[0-5]|1[0-9]|[0-9])?[0-9])', s, re.I).group()
    '127.0.0.1'
    

    Place this snippet in your django routing definitions file - urls.py

    url(r'^SaveData/(?P<ip>((2[0-5]|1[0-9]|[0-9])?[0-9]\.){3}((2[0-5]|1[0-9]|[0-9])?[0-9]))/(?P<mac>([0-9A-F]{2}[:-]){5}([0-9A-F]{2}))', SaveDataHandler.as_view()),