我正在使用jdev 12.2.1.0.0,我正在尝试使用""验证输入字段(String)。 其中我尝试以下面显示的格式输入时间段
所以我需要一个正则表达式,允许用户以任何给定的格式输入时间段,也不需要考虑单位之间的空间(即:1h30m也有效)。
答案 0 :(得分:0)
试试这个正则表达式:
^(?:\d+h)?(?:(?!\n)\s)?(?:\d+m?)?(?:(?!\n)\s)?(?:\d+s)?$
演示here
答案 1 :(得分:0)
答案 2 :(得分:0)
匹配所有案件。
如果超过1个周期,则分钟/秒必须在0到59之间:
^(?:\d+[hms]?|\d+h(?:[ ]*[0-5]?\dm)?(?:[ ]*[0-5]?\ds)?|\d+m[ ]*[0-5]?\ds)$
测试here
答案 3 :(得分:0)
[0-9]+[d|h|m|s|D|H|M|S]?[^$]?([0-9]+[h|m|s|H|M|S]?[^$]?)?([0-9]+[m|s|M|S]?[^$]?)?([0-9]+[s|S]?[^$])?
其他答案均未达到我的目的。 但是,由于此,我对Regex的研究更多了。 因此,请记住[0-9]表示一个数字,而+是将其扩展为多个数字。 [d | h | m | s |]表示d,h,m或s中的任何字母。您可以随意添加几天或几小时。 ?是使前面的内容为可选。