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 focus不起作用的解决方法(主要是因为dom元素是否加载完成)
Nov 05 Javascript
jquery 实现两级导航菜单附效果图
Mar 07 Javascript
JavaScript 学习笔记之变量及其作用域
Jan 14 Javascript
JavaScript获取当前网页最后修改时间的方法
Apr 03 Javascript
javascript框架设计之种子模块
Jun 23 Javascript
Three.js快速入门教程
Sep 09 Javascript
利用Node.js制作爬取大众点评的爬虫
Sep 22 Javascript
js实现拖拽功能
Mar 01 Javascript
使用mint-ui实现省市区三级联动效果的示例代码
Feb 09 Javascript
vue.js select下拉框绑定和取值方法
Mar 03 Javascript
js中this的指向问题归纳总结
Nov 28 Javascript
vue将文件/图片批量打包下载zip的教程
Oct 21 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
使用ThinkPHP自带的Http类下载远程图片到本地的实现代码
2011/08/02 PHP
php实现的xml操作类
2016/01/15 PHP
PHP实现将MySQL重复ID二维数组重组为三维数组的方法
2016/08/01 PHP
php 查找数组元素提高效率的方法详解
2017/05/05 PHP
JS+CSS模拟可以无刷新显示内容的留言板实例
2015/03/03 Javascript
JS实现为表格动态添加标题的方法
2015/03/31 Javascript
Jquery网页内滑动缓冲导航的实现代码
2015/04/05 Javascript
jQuery中的insertBefore(),insertAfter(),after(),before()区别介绍
2016/09/01 Javascript
微信小程序 教程之列表渲染
2016/10/18 Javascript
javascript实现鼠标点击页面 移动DIV
2016/12/02 Javascript
Vue计算属性的学习笔记
2017/03/22 Javascript
详解如何在Node.js的httpServer中接收前端发送的arraybuffer数据
2018/11/11 Javascript
详解axios中封装使用、拦截特定请求、判断所有请求加载完毕)
2019/04/09 Javascript
no-vnc和node.js实现web远程桌面的完整步骤
2019/08/11 Javascript
layui树形菜单动态遍历的例子
2019/09/23 Javascript
vue 微信分享回调iOS和安卓回调出现错误的解决
2020/09/07 Javascript
python批量导出导入MySQL用户的方法
2013/11/15 Python
http请求 request失败自动重新尝试代码示例
2018/01/25 Python
Python matplotlib的使用并自定义colormap的方法
2018/12/13 Python
详解python中的hashlib模块的使用
2019/04/22 Python
如何使用Python标准库进行性能测试
2019/06/25 Python
python matplotlib库绘制条形图练习题
2019/08/10 Python
详解HTML5 window.postMessage与跨域
2017/05/11 HTML / CSS
Currentbody澳大利亚:美容仪专家
2019/11/11 全球购物
中专毕业生求职简历的自我评价
2013/10/21 职场文书
见习期自我鉴定
2014/01/31 职场文书
我爱我校演讲稿
2014/05/21 职场文书
单位承诺书格式
2014/05/21 职场文书
商务英语专业毕业生求职信
2014/07/06 职场文书
电子商务专业求职信
2014/07/10 职场文书
物业消防安全责任书
2014/07/23 职场文书
我与祖国共奋进演讲稿
2014/09/13 职场文书
幼儿园推普周活动总结
2015/05/07 职场文书
2016年幼儿园教师政治学习心得体会
2016/01/23 职场文书
 分享一个Python 遇到数据库超好用的模块
2022/04/06 Python
Redis实现主从复制方式(Master&Slave)
2022/06/21 Redis