Javascript 正则表达式表示年份

标签 javascript jquery regex

我对 JavaScript 还很陌生。如何查找一段文本是否包含四位数年份?

例如:

var copyright = $('#copyright').val();
if \d{4} in copyright:
    do something

最佳答案

像这样的事情应该可以做到......

var isValidYear = /\d{4}/.test(str);

看起来这是用户输入,因此您可能需要在尝试使用此正则表达式验证字符串之前 trim 该字符串。或者,在开始 anchor 和结束 anchor 之间的任一侧添加 \s*,它将足够接近 trim()/$.trim() 为你(它也不会杀死不可打印的控制字符)。

或者,如果您想测试该年份是否是有效年份(至少与 JavaScript 可以处理的一样有效),您可以这样做...

var isValidYear = ! isNaN(new Date(str, 0, 1));

尽管在我的 Chrome 上,这会假设 xx19xx 并处理超过四位十进制数字的日期。

关于Javascript 正则表达式表示年份,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14226238/

相关文章:

javascript - 如何将字符串点符号转换为对象引用,而不是嵌套

javascript - 使用 PHP 和 JS 显示单独列的多个计时器!但显示 "EXPIRED EVERYTIME"

python - 无法捕获具有不同模式的某些电话号码

javascript - 使用标记聚类器时移动的标记消失

javascript - EmberJS 基于数组的计算属性不起作用

jquery - IE 不识别填充和边框

jquery - 如何通过点击背景关闭模式(Twitter Bootstrap)

javascript - div 重叠正文内容

javascript 标记字符串以清理文本

c++ - 如何使用正则表达式 C++ 将文本文件解析为变量?