有一个测试字符串。
---
,-
,.
或:
分隔符,以便将字符串分成几部分,每个部分都有两位数字。我无法满足第三个条件
我的回答:
^(\d{2}(([-]{3})|.|:|-)){3}(\d){2}$
实施例:
1. 11---11---11---11
2. 11:11:11:11
请帮忙。
答案 0 :(得分:1)
请注意,要求转换为格式为##:##:##:##
的字符串,即两个数字,后跟分隔符等。
您可以为每个分隔符类型使用模式以及更改以包括所有四种分隔符类型:
^(?:\d{2}---\d{2}---\d{2}---\d{2})|
(?:\d{2}-\d{2}-\d{2}-\d{2})|
(?:\d{2}\.\d{2}\.\d{2}\.\d{2})|
(?:\d{2}:\d{2}:\d{2}:\d{2})$
为了便于阅读,我将正则表达式分成多行。
在这里演示:
这个正则表达式可以简化为:
^(?:\d{2}---){3}\d{2}|(?:\d{2}-){3}\d{2}|(?:\d{2}:){3}\d{2}|(?:\d{2}\.){3}\d{2}$
但我实际上更喜欢较长的开放形式,因为它更容易阅读。
答案 1 :(得分:0)
更多Simpliefied回答: ^(?:\ d {2}( - ){3}){3} \ d {2} |: - {3} \ d {2} |((\ d {2}?)?:\ d { 2}:){3} \ d {2} |(?:\。d {2}){3} \ d {2} $