ipaddress和mac地址的正则表达式

Hun*_*unt 4 python regex mac-address ip-address

任何人都可以建议我的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})$
Run Code Online (Sandbox Code Playgroud)

Mic*_*zcz 13

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'
Run Code Online (Sandbox Code Playgroud)

将此代码段放在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()),
Run Code Online (Sandbox Code Playgroud)