Java 自定义时间字符串的正则表达式
我制作了一个android程序,允许用户输入自定义的“时间”字符串,例如:Java 自定义时间字符串的正则表达式,java,android,regex,time,Java,Android,Regex,Time,我制作了一个android程序,允许用户输入自定义的“时间”字符串,例如: “3h”(表示3小时) “2m30s”(表示2分30秒) “2h962s”(指2小时962秒(原文如此)) “1h5s6c”(表示1小时5秒和百分之六秒) “5h78m228c”(表示5小时78分钟(原文如此)和228百分之一秒(原文如此)) 我一直在使用此正则表达式验证自定义时间字符串: ^([0-9]?[0-9]h)([0-9]+m)([0-9]+s)([0-9]+c)$ (因此,允许的最大时间为99小时,分、秒
- “3h”(表示3小时)
- “2m30s”(表示2分30秒)
- “2h962s”(指2小时962秒(原文如此))
- “1h5s6c”(表示1小时5秒和百分之六秒)
- “5h78m228c”(表示5小时78分钟(原文如此)和228百分之一秒(原文如此))
- “3”(不指定“h”,以便使程序将“3”视为“3小时”)
- “2m30”(不指定“s”,以使程序将“30”视为“30秒”)
- “2h962s”(相同,因为如果不指定“s”,程序会将“962”视为“962分钟”)
- “1h5s6”(不指定“c”,以便使程序将“6”视为“百分之六秒”)
- “5h78m228c”(相同,因为不指定“c”,程序将把“228”视为“228秒”)
^([0-9]?[0-9](h|$))?([0-9]+(m|$))?([0-9]+(s|$))?([0-9]+(c|$))?$
每次检查时间单位时,或者允许字符串结尾