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 相关文章推荐
jQuery 1.5最新版本的改进细节分析
Jan 19 Javascript
浅析Js(Jquery)中,字符串与JSON格式互相转换的示例(直接运行实例)
Jul 09 Javascript
jquery的ajax跨域请求原理和示例
May 08 Javascript
使用JQuery实现的分页插件分享
Nov 05 Javascript
JS图片左右无缝隙滚动的实现(兼容IE,Firefox 遵循W3C标准)
Sep 23 Javascript
JavaScript遍历Json串浏览器输出的结果不统一问题
Nov 03 Javascript
backbone简介_动力节点Java学院整理
Jul 14 Javascript
基于jquery的on和click的区别详解
Jan 15 jQuery
JavaScript实现简单的计算器
Jan 16 Javascript
jQuery单页面文字搜索插件jquery.fullsearch.js的使用方法
Feb 04 jQuery
JavaScript实现tab栏切换效果
Mar 16 Javascript
vue v-on:click传递动态参数的步骤
Sep 11 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
通过ODBC连接的SQL SERVER实例
2006/10/09 PHP
PHP 抽象方法与抽象类abstract关键字介绍及应用
2014/10/16 PHP
微信公众平台开发之配置与请求
2015/08/26 PHP
PHP实用小技巧之调用录像的方法
2019/12/05 PHP
超级退弹代码
2008/07/07 Javascript
jqgrid 编辑添加功能详细解析
2013/11/08 Javascript
单击和双击事件的冲突处理示例代码
2014/04/03 Javascript
javascript移动设备Web开发中对touch事件的封装实例
2014/06/05 Javascript
JavaScript中的console.group()函数详细介绍
2014/12/29 Javascript
javascript中var的重要性分析
2015/02/11 Javascript
JS添加删除DIV的简单实例
2016/07/08 Javascript
AngularJS表达式讲解及示例代码
2016/08/16 Javascript
js提示框替代系统alert,自动关闭alert对话框的实现方法
2016/11/07 Javascript
Reactjs实现通用分页组件的实例代码
2017/01/19 Javascript
JS实现在文本指定位置插入内容的简单示例
2017/12/22 Javascript
原生实现一个react-redux的代码示例
2018/06/08 Javascript
对vuejs的v-for遍历、v-bind动态改变值、v-if进行判断的实例讲解
2018/08/27 Javascript
利用Node.js如何实现文件循环覆写
2019/04/05 Javascript
如何使用JavaScript实现栈与队列
2019/06/24 Javascript
解决layui富文本编辑器图片上传无法回显的问题
2019/09/18 Javascript
微信小程序实现上传多个文件 超过10个
2020/03/30 Javascript
Python中使用urllib2防止302跳转的代码例子
2014/07/07 Python
深入理解Python对Json的解析
2017/02/14 Python
Python爬虫实现(伪)球迷速成
2018/06/10 Python
python生成带有表格的图片实例
2019/02/03 Python
python+selenium 脚本实现每天自动登记的思路详解
2020/03/11 Python
拿来就用!Python批量合并PDF的示例代码
2020/08/10 Python
python获取linux系统信息的三种方法
2020/10/14 Python
香港优质食材和美酒专门店:FoodWise
2017/09/01 全球购物
Crocs波兰官方商店:女鞋、男鞋、童鞋、洞洞鞋
2019/10/08 全球购物
iKRIX意大利网上商店:男女豪华服装和配件
2019/10/09 全球购物
《狐假虎威》教学反思
2014/02/07 职场文书
个人批评与自我批评发言稿
2014/09/28 职场文书
2015年保险公司内勤工作总结
2015/05/23 职场文书
通知怎么写?
2019/04/17 职场文书
python 判断字符串当中是否包含字符(str.contain)
2022/06/01 Python