我想知道是否可以简化像这样的正则表达式
/^[0-9]{2}[ .-]?[0-9]{2}[ .-]?[0-9]{2}[ .-]?[0-9]{2}[ .-]?[0-9]{2}$/
更短暂的
类似
/^([([0-9]{2})([ .-]?))]{4})[0-9]$/
但我似乎没有把它弄好,也没有接近搞清楚。
答案 0 :(得分:4)
这个正则表达式:
/^[0-9]{2}[ .-]?[0-9]{2}[ .-]?[0-9]{2}[ .-]?[0-9]{2}[ .-]?[0-9]{2}$/
可缩短为:
/^(?:[0-9]{2}[ .-]?){4}[0-9]{2}$/
答案 1 :(得分:2)
看看这个:
^([0-9]{2}[ .-]?){5}$
它短得多,但也会匹配11-11-11-11-11-
。确切的等价物由@anubhava发布。
你原来的正则表达式看起来像这样: