为了账号安全,请及时绑定邮箱和手机立即绑定

怎么把两个正则表达式用或的关系一起使用?

怎么把两个正则表达式用或的关系一起使用?

烙印99 2019-04-17 18:15:35
(((19)\d{2})|(2000))-(1[0-2]|0?[1-9])-\b(0?[1-9]\b|\b[1-2][0-9]\b|\b3[0-1]\b)——————————————————————————————————((2001)-0?[1-8]-\b(0?[1-8]\b|\b[1-2][0-9]\b|\b3[0-1]\b))第一个是验证日期是否在1900-2000年之间,第二个是验证是否在2000年1月到8月之间。我把两个正则表达左右括号打起来,用|连接,为什么只能验证第一个,第二个不行,求高人指教
查看完整描述

3 回答

?
手掌心

TA贡献1942条经验 获得超3个赞

当然不能匹配后面的条件了,我们默认的正则匹配模式是“贪婪模式”这里涉及到匹配模式,前面的匹配正确了后面的就不匹配了。你可以分开两个条件分开验证


查看完整回答
反对 回复 2019-05-14
?
慕标琳琳

TA贡献1830条经验 获得超9个赞

正则表达式匹配需要注意转移字符,建议看下<<sed修炼系列(四):sed中的疑难杂症>>中正则表达式注意事项

查看完整回答
反对 回复 2019-05-14
  • 3 回答
  • 0 关注
  • 2908 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信