如何构建时间和数字的正则表达式

时间:2012-06-20 22:43:17

标签: regex

我需要一个RegEx,可以处理1到999之间的整数或从00:00到59:59的时间MM:SS。这是我的尝试^?((\d{1,3})|((([0-9])|([0-5][0-9])):(([0-9])|([0-5][0-9]))))$

1 个答案:

答案 0 :(得分:1)

试试:

(([0-5][0-9]:[0-5][0-9])|\d{1,3})

(或者如果你还需要匹配0:17或17:2或3:8之类的东西):

((([0-5][0-9]|[0-9]):([0-5][0-9])|[0-9])|\d{1,3})

您需要注意,当您匹配正则表达式时,您正在创建一个非常“简单”的解析器,从左到右 消耗字符。