谁能建议我 ip 地址和 mac 地址的正则表达式?

我正在使用 python 和 django

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

对于 mac 地址,我尝试遵循但没有用

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

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

最佳答案

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'

将此代码段放在 django 路由定义文件中 - 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()),

关于python - ip地址和mac地址的正则表达式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5287381/

10-12 22:51