js正则匹配mm.dd格式日期的问题

有一些比较麻烦的数据,日期用的是mm.dd、mm.d、m.dd、m.d四种混合的,我想用一个正则去匹配,写了一个这样的:/^([1-9]|0[1-9]|1[0-2])(\.)([1-9]|0[1-9]|1-2|3[0-1])$/g,我发现这个能匹配单个目标格式的数据,类似'7.13 ssssssssss 7.14 ss:ss aaa:aa 7.15'这样的就不能匹配了,我对正则不是很熟悉,来论坛请教一下。

阅读 2.1k
2 个回答
'7.13 ssssssssss 7.14 ss:ss aaa:aa 7.15'.match(/\b(10|1?[1-9])\.(3[01]|10|20|[12][1-9])\b/g)
//["7.13", "7.14", "7.15"]

其实 可以不用正则 split('.')后查看数组每一项是否符合要求就可以了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题