关于Java Script中的正则表达式的问题

lyw2073327 2021-02-10 04:48:50
在JS的正则表达式里遇到这个问题,我之前理解\d{3} 是表示又个数字, 那下面的例子中1000就有4个数字,就不满足\d{3}的情况, 那照理应该返回是false,但为什么alert(pattern.test(aa))返回的还是true呢,而且我发现怎么改1000,始终都是显示true,同样后面的0000也是怎么改都是ture,倒是中间的01添加或减少数字会显示false,所有向各位大佬咨询一下是我理解的哪里有问题吗,谢谢

var aa='1000-01-0000';
var pattern=/\d{3}-\d{2}-\d{4}/;
alert(pattern.test(aa));
...全文
312 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
sxysoft_csdn 2021-02-16
  • 打赏
  • 举报
回复
var aa='1000-01-0000'; var pattern=/\d{3}-\d{2}-\d{4}/; alert(pattern.test(aa)); 这个一眼就看出问题出来了。 正则表达式
qybao 2021-02-10
  • 打赏
  • 举报
回复
\d{2,3} //表示做好2个数字,最多3个数字,也就是匹配2到3个数字 \d{3} //就是只能匹配3个数字
lyw2073327 2021-02-10
  • 打赏
  • 举报
回复
好像知道原因了,要加^和$,改成var pattern=/^\d{3}-\d{2}-\d{4}$/貌似就没问题了,另外想咨询下我看到有的是\d{2,3}这种样式,想咨询下这种样式表示什么意思呢

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧