tekst= "asdadsasdas 192.168.1.1 asdasdadasdasd 10.22.10.5asfasfaff 172.10.5.1safafa"
import re
szukane = r'\d{1,3}.+'
znalezione = re.search(szukane, tekst)
if znalezione:
co= znalezione.group()
print(co)
我希望提取IP地址,但在运行上面的代码后,我得到了:
192.168.1.1 asdasdadasdasd 10.22.10.5asfasfaff 172.10.5.1safafa
为什么它不起作用,我应该改变什么?
答案 0 :(得分:2)
.
不是正则表达式中的字面时间段。它代表所有角色。你需要用反斜杠来逃避它。另外,不要忘记包含一个未跟随句点的最后一组数字。
szukane = r'(?:\d{1,3}\.)+(?:\d{1,3})'
结果:
>>> re.findall(r'(?:\d{1,3}\.)+(?:\d{1,3})', "asdadsasdas 192.168.1.1 asdasdadasdasd 10.22.10.5asfasfaff 172.10.5.1safafa")
['192.168.1.1', '10.22.10.5', '172.10.5.1']
答案 1 :(得分:0)
在这里,让我search that为你......
aa=re.match(r"^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$",ip)
你必须逃避这些时期......等等。