M/D/YY /^(\d{1,2})\/(\d{1,2})\/(\d{2})$/
M-D-YY /^(\d{1,2})\-(\d{1,2})\-(\d{2})$/
M.D.YY /^(\d{1,2})\.(\d{1,2})\.(\d{2})$/
答案 0 :(得分:3)
/^(\d{1,2})([\/.-])(\d{1,2})\2(\d{2})$/
注意,现在有一个新的捕获组,所以年份将是反向引用数字4而不是之前的3。
如果您还想允许M/D-YY
等,则可以使用
/^(\d{1,2})[\/.-](\d{1,2})[\/.-](\d{2})$/
答案 1 :(得分:2)
最简单的方法是写:
(r1)|(r2)|(r3)
其中ri是您拥有的正则表达式。当然,你可以将公共部分分解为锚点,所以
^(?:(r1)|(r2)|(r3))$
实际上,在您的情况下,正则表达式仅在使用的分隔符中有所不同,因此您可以将它们放在字符类中以获得通用的正则表达式。
答案 2 :(得分:1)
您需要捕获第一个分隔符并执行反向引用:
/^(\d{1,2})([\/-\.])(\d{1,2})\2(\d{2})$/