JS正则RegExp.test()使用注意事项(不具有重复性)


Posted in Javascript onDecember 28, 2016

本文实例分析了JS正则RegExp.test()使用注意事项。分享给大家供大家参考,具体如下:

先看下面这段代码:

// 2012-12-12 12:12:12
var regex = /\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}/g;
// true
alert(regex.test("2012-12-12 12:12:12"));
// false
alert(regex.test("2012-12-12 12:12:12"));

执行结果已经在代码注释里了,可以看到:对于同一个正则表达式对象regex,不能重复调用:第一次返回true,第二次就返回false,很显然这种效果不是我们想要的。这是因为RegExp.test()方法,第一次从位置0开始查找,可以匹配;第二次的查找位置就不是0了,说以就不能匹配了。

解决方式挺简单:每次都让test从第0个位置开始匹配就可以了:

// 2012-12-12 12:12:12
var regex = /\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}/g;
// true
alert(regex.test("2012-12-12 12:12:12"));
regex.lastIndex = 0;
// true
alert(regex.test("2012-12-12 12:12:12"));
Javascript 相关文章推荐
js常用函数 不错
Sep 08 Javascript
node.js中的fs.mkdir方法使用说明
Dec 17 Javascript
jQuery实现信息提示框(带有圆角框与动画)效果
Aug 07 Javascript
JS动态日期时间的获取方法
Sep 28 Javascript
JavaScript获取ul中li个数的方法
Feb 13 Javascript
bootstrap weebox 支持ajax的模态弹出框
Feb 23 Javascript
使用D3.js制作图表详解
Aug 13 Javascript
vue-cli脚手架-bulid下的配置文件
Mar 27 Javascript
vue3.0 CLI - 3.2 路由的初级使用教程
Sep 20 Javascript
JS正则表达式常见函数与用法小结
Apr 13 Javascript
Vue的Options用法说明
Aug 14 Javascript
JavaScript事件循环及宏任务微任务原理解析
Sep 02 Javascript
Bootstrap 模态框实例插件案例分析
Dec 28 #Javascript
Angular使用ng-messages与PHP进行表单数据验证
Dec 28 #Javascript
Bootstrap中datetimepicker使用小结
Dec 28 #Javascript
html5+CSS 实现禁止IOS长按复制粘贴功能
Dec 28 #Javascript
angular-ui-sortable实现可拖拽排序列表
Dec 28 #Javascript
JS正则表达式之非捕获分组用法实例分析
Dec 28 #Javascript
JavaScript实现经典排序算法之插入排序
Dec 28 #Javascript
You might like
全国FM电台频率大全 - 8 黑龙江省
2020/03/11 无线电
基于PHP Web开发MVC框架的Smarty使用说明
2013/04/19 PHP
Yii隐藏URL中index.php的方法
2016/07/12 PHP
PHP实现批量重命名某个文件夹下所有文件的方法
2017/09/04 PHP
laravel实现图片上传预览,及编辑时可更换图片,并实时变化的例子
2019/11/14 PHP
javascript实现文本域写入字符时限定字数
2014/02/12 Javascript
js实现进度条的方法
2015/02/13 Javascript
深入解析JavaScript编程中的this关键字使用
2015/11/09 Javascript
axios基本入门用法教程
2017/03/25 Javascript
ES6新数据结构Map功能与用法示例
2017/03/31 Javascript
使用vue制作FullPage页面滚动效果
2017/08/21 Javascript
Bootstrap实现下拉菜单多级联动
2017/11/23 Javascript
基于input动态模糊查询的实现方法
2017/12/12 Javascript
vue的keep-alive用法技巧
2019/08/15 Javascript
jQuery实现B2B网站后台管理系统侧导航
2020/07/08 jQuery
[56:14]Fnatic vs OG 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
python使用PIL模块实现给图片打水印的方法
2015/05/22 Python
python处理按钮消息的实例详解
2017/07/11 Python
Python3读取Excel数据存入MySQL的方法
2018/05/04 Python
python函数的万能参数传参详解
2019/07/26 Python
在django中实现页面倒数几秒后自动跳转的例子
2019/08/16 Python
使用Python开发个京东上抢口罩的小实例(仅作技术研究学习使用)
2020/03/10 Python
Python Socketserver实现FTP文件上传下载代码实例
2020/03/27 Python
Jacadi Paris美国官方网站:法国童装品牌
2017/10/15 全球购物
英国第一的市场和亚马逊替代品:OnBuy
2019/03/16 全球购物
Zooplus罗马尼亚:宠物食品和配件
2019/11/02 全球购物
科颜氏印度官网:Kiehl’s印度
2021/02/20 全球购物
物流仓储实习自我鉴定
2013/09/25 职场文书
公司行政经理岗位职责
2013/12/24 职场文书
酒店总经理岗位职责范本
2014/08/08 职场文书
2014年小学工作总结
2014/11/26 职场文书
银行稽核岗位职责
2015/04/13 职场文书
2016年寒假政治学习心得体会
2015/10/09 职场文书
2015年幼儿园师德师风建设工作总结
2015/10/23 职场文书
信息技术研修心得体会
2016/01/08 职场文书
零基础学java之带返回值的方法的定义和调用
2022/04/10 Java/Android