[英]Matching Regex with special characters repeated
有一个测试字符串。
---
, -
.
或:
分隔符,以使字符串分成几部分,每部分恰好有两位数字。 我无法满足第三条件
我的答案: ^(\\d{2}(([-]{3})|.|:|-)){3}(\\d){2}$
示例:1. 11---11---11---11
2. 11:11:11:11
请帮忙 。
请注意,要求转换为格式为##:##:##:##
的字符串,即两个数字,后跟分隔符等。
您可以为每种分隔符类型使用模式,并交替使用所有四种分隔符类型:
^(?:\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}$
但是我实际上更喜欢较长的开放形式,因为它更易于阅读。
更简单的答案:^(?:\\ d {2}(-){3}){3} \\ d {2} |(?:\\ d {2}-){3} \\ d {2} |(? :\\ d {2}:){3} \\ d {2} |(?? \\ d {2}。){3} \\ d {2} $
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.