考虑以下字符串:
20 mins
我想在PHP中创建一个能够使用preg_match()
找到这样一个字符串的RegularExpression。表达式应该足够动态,以便它能够识别前面数值的非复数和更多选项。例如,还应匹配以下示例:
1 min
0.5 mins
999 mins
我尝试了以下内容,但它没有执行:
(^|\b)[0-99999*]\/b\min[s]?\b
答案 0 :(得分:3)
你可以使用这种模式:
\b[0-9]+(?:\.[0-9]+)?\smins?\b
注意:您可以在数字和“分钟”之间留出多个空格,以\s
替换\s+
note2:角色类是一个包含字符的包,写[0-99999*]
没有任何意义。 See the manual
答案 1 :(得分:0)
这种模式:
\b\d+(?:\.\d+)? mins?\b
它应匹配您想要的所有情况,包括:
•1 min
•0.5 mins
•999 mins
•0.51213123 mins
•2352352.51213123 mins