我正在使用pytest编写测试,以确保传入的时间戳字符串与相应的正则表达式格式匹配。我是通过以下方式完成的。
test_epoch():
timestamp = "1541811598.802"
epoch_regex = re.compile(r'^[0-9]+$')
assert epoch_regex.match(epoch)
但是,运行测试时,出现以下错误:
AssertionError: assert None
+ where None = <built-in method match of re.Pattern object at 0x11ade6480>('1541840398.802')
+ where <built-in method match of re.Pattern object at 0x11ade6480> = re.compile('^[0-9]+$').match
有人知道我哪里出了错,以及如何正确断言与正则表达式匹配的字符串吗?
答案 0 :(得分:1)
cls
是否真的与正则表达式匹配?如果您摆脱了timestamp
中的'.'
,该怎么办?我觉得timestamp
会过去。
还要记住,timestamp = "1541811598802"
在正则表达式中是一个特殊字符,因此,在修改正则表达式时,请确保对此进行说明(提示,使用转义符)!