我有一个日志中的短语列表,我想使用以下正则表达式来验证名称。 phrase
是有效的,但我仍然失败。谁能告诉我这有什么问题吗?
非常感谢!
phrase = "ServerName.192.168.12.12.52915"
regex = re.compile("\bServerName\.\^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,5}$")
res = regex.match(phrase)
if test:
print "pass"
else:
print "fail"
最佳答案
您的输入中没有 ^
,但您在正则表达式模式中定义了它。去掉它。
此外,由于您使用 re.match
将搜索锚定在字符串的开头,因此不需要初始的 \b
。为了安全起见,请使用原始字符串文字。
r"ServerName\.\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,5}$"
请参阅regex demo .
关于Python正则表达式单词、ip和端口组合匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37164957/