【发布时间】:2015-02-19 09:25:22
【问题描述】:
我有一个字典,它有不同的 Ip 作为键,它的 ping 结果作为值。仅当 ping 结果通过特定标准时,我才想继续执行我的脚本
假设ping结果如下(字典值):
10 packets transmitted, 10 packets received, 0.00% packet loss
我创建了一个正则表达式,并提取了每个值如下:
match = re.search(r'(\d+\s* packet\w* transmitted), (\d+\s* packet\w* received), (\d+\.\d+ packet loss)',str,re.M|re.I)
>>> match.group(3)
'10.00% packet loss'
我已经提取了值..
现在我想编写一个带有条件的正则表达式,通过它我将要求脚本仅在我的字典中每个 Ip;s 的丢包率小于 5% 时才继续执行。
我可以考虑再次从丢包中获取数字,然后进行比较,但只是想知道是否有更好的方法来做到这一点?
如果有任何想法,请分享..
【问题讨论】:
-
这是一个错字
\d+ * <-- Nested quantifier吗? -
抱歉,打错了。
-
@sln 那是一个嵌套量词吗?我看到
one or more digits followed by zero or more spaces。或者你也有错字;) -
@KennethK。 - 他在
\d+*之前有一个错字。认为他修好了。
标签: python regex dictionary