javascript - 查找大于或等于 2014 的正则表达式

标签 javascript regex

我想使用正则表达式查找大于或等于 2014 年的年份(4 位数字)。 [2014 - 9999]

我已经试过了,但如果最后一位数字小于 4,则不匹配。

^[2-9]\d{1,}[1-9]0*[4-9]0*$

例如:3013

请帮忙。

最佳答案

尝试使用下面的正则表达式来匹配从 2014 到 9999 的年份,

^(?:20(?:1[4-9]|[2-9][0-9])|2[1-9][0-9][0-9]|[3-9][0-9][0-9][0-9])$

DEMO

解释:

  • 20(?:1[4-9]|[2-9][0-9]) 匹配从 2014 到 2099 的年份。
  • 2[1-9][0-9][0-9] 匹配从 2100 到 2999 的年份。
  • [3-9][0-9][0-9][0-9] 匹配从 3000 到 9999 的年份。

关于javascript - 查找大于或等于 2014 的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25021629/

相关文章:

php - 检查字符串的第一个字符是否为字母的函数

javascript - 我怎样才能使这个正则表达式不导致 "catastrophic backtracking"?

Java正则表达式问题

javascript - 是否可以从 HTML 文件中的特定脚本标记引用函数或对象

javascript - 简单的 jQuery - 附加到正文会导致以下代码不起作用

javascript - 类型错误 : dispatch is not a function in nested component

java - 正则表达式提取值

javascript - Python 和 Javascript 伪随机数生成器 PRNG

javascript - 使用 Express 嵌套路由器的正确/简洁方法

regex - .htaccess正则表达式需要使尾随正斜杠成为可选