2024-05-14 21:31:46 发布
网友
我有一段代码以这种格式记录时间:
0.0-8.0 0.0-9.0 0.0-10.0
我想使用一个正则表达式来查找所有这些字符串,并检查了here和{a2}以获得帮助,但仍然感到困惑。如果我只想做一位数的数字,我知道怎么做,但我不知道如何处理10或20这样的两位数数字。在
表达式找不到字符串也很重要
因为它应该被忽略。 到目前为止,我的表情是这样的:
expression = re.compile(',0\.0\-[0-2][0-9])
如果要匹配问题中显示的每一行,请尝试以下表达式:
0\.0\-[0-2]?\d\.\d
\d与{}相同。?表示0或1次出现,因此它只匹配1位或2位数字。如果在正则表达式的开头需要逗号,请将其添加进去。在
\d
?
如果要排除0.0-1.0,那么应该在代码中而不是在正则表达式中这样做,因为那样会降低可读性。但如果你坚持的话,我已经为你提供了一个排除字符串的方法:
0.0-1.0
Try it here
这使用了一个否定的lookback来确保前一部分不是0-1.,这只会出现在您不想要的匹配中。在
0-1.
如果要匹配问题中显示的每一行,请尝试以下表达式:
\d
与{?
表示0或1次出现,因此它只匹配1位或2位数字。如果在正则表达式的开头需要逗号,请将其添加进去。在如果要排除
0.0-1.0
,那么应该在代码中而不是在正则表达式中这样做,因为那样会降低可读性。但如果你坚持的话,我已经为你提供了一个排除字符串的方法:Try it here
^{pr2}$这使用了一个否定的lookback来确保前一部分不是
0-1.
,这只会出现在您不想要的匹配中。在相关问题 更多 >
编程相关推荐