如果用户输入带有IP地址的字符串。 我想只提取IP 例如:
Hello I am localhost 127.0.0.1
我想从整个字符串中只获取ip“127.0.0.1”,我该怎么办? 感谢。
答案 0 :(得分:2)
使用re
:
import re
result = re.findall("\d+\.\d+\.\d+\.\d+", "Hello I am localhost 127.0.0.1")
输出:
['127.0.0.1']
答案 1 :(得分:1)
这是一个匹配IPv4地址的正则表达式:
(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])
你可以像这样使用它
import re
regex = r"(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])"
print(re.search(regex, "string with an ip like 127.0.0.1 in it").group())