js的正则test,match,exec详细解析


Posted in Javascript onJanuary 29, 2014

正则表达式gi
我刚开始也看不懂,从网上找到后看到了,现在分享给大家
正在表达式的通项: /pattern/flags 即(/模式/标记 )

构造器函数方法使用方法如下:
new RegExp("pattern"[, "flags"])即new RegExp("模式"[,"标记"])
参数:
pattern(模式)
表示正则表达式的文本
flags(标记)
如果指定此项,flags可以是下面值之一:
g: global match(全定匹配)
i: ignore case(忽略大小写)
gi: both global match and ignore case(匹配所有可能的值,也忽略大小写)
表达式建立同样的正则表达式例如:

/ab+c/gi

正则表达式中/i,/g,/ig,/gi,/m的区别和含义

/i (忽略大小写)
/g (全文查找出现的所有匹配字符)
/m (多行查找)
/gi(全文查找、忽略大小写)
/ig(全文查找、忽略大小写)

test,match,exec

JavaScript中经常用到正则表达式, 而正则表达式中经常用到Match和Test这两个函数,当然还有Exec. 这里以代码实例来区分它们之间的不同吧.

Match Example

var str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
var regexp = /[A-E]/gi;
var rs = str.match(regexp);
//rs= Array('A', 'B', 'C', 'D', 'E', 'a', 'b', 'c', 'd', 'e');

Test Example
var str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
var regexp = /[A-E]/gi;
var rs = regexp.test(str);
// rs = true; boolean

Exc Example
var str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
var regexp = /[A-E]/gi;
var rs;
while ((rs = regexp.exec(str)) != null)
{
    document.write(rs);
    document.write(regexp.lastIndex);
    document.write("<br />");
}
Javascript 相关文章推荐
JavaScript For Beginners(转载)
Jan 05 Javascript
使用Jquery实现点击文字后变成文本框且可修改
Sep 21 Javascript
Jquery中CSS选择器用法分析
Feb 10 Javascript
JQuery显示隐藏页面元素的方法总结
Apr 16 Javascript
基于JS如何实现类似QQ好友头像hover时显示资料卡的效果(推荐)
Jun 09 Javascript
WebSocket+node.js创建即时通信的Web聊天服务器
Aug 08 Javascript
javascript html5轻松实现拖动功能
Mar 01 Javascript
angularjs+bootstrap菜单的使用示例代码
Mar 07 Javascript
详解vue-cli中配置sass
Jun 21 Javascript
three.js实现圆柱体
Dec 30 Javascript
vue2.0 获取从http接口中获取数据,组件开发,路由配置方式
Nov 04 Javascript
vuex存值与取值的实例
Nov 06 Javascript
js正则表达exec与match的区别说明
Jan 29 #Javascript
jquery实现input输入框实时输入触发事件代码
Jan 28 #Javascript
用jquery等比例控制图片宽高的具体实现
Jan 28 #Javascript
jQuery实现当按下回车键时绑定点击事件
Jan 28 #Javascript
用js正确判断用户名cookie是否存在的方法
Jan 28 #Javascript
原生javascript实现无间缝滚动示例
Jan 28 #Javascript
IE、FF浏览器下修改标签透明度
Jan 28 #Javascript
You might like
php判断数组元素中是否存在某个字符串的方法
2014/06/14 PHP
Yii实现多数据库主从读写分离的方法
2014/12/29 PHP
PHP中把对象转换为关联数组代码分享
2015/04/09 PHP
php实现在线通讯录功能(附源码)
2016/05/13 PHP
PHP实现超简单的SSL加密解密、验证及签名的方法示例
2017/08/28 PHP
laravel 中某一字段自增、自减的例子
2019/10/11 PHP
JavaScript实现禁止后退的方法
2006/12/27 Javascript
javascript 表单的友好用户体现
2009/01/07 Javascript
网页禁用右键实现代码(JavaScript代码)
2009/10/29 Javascript
IE8 chrome中table隔行换色解决办法
2010/07/09 Javascript
jQuery在IE下使用未闭合的xml代码创建元素时的Bug介绍
2012/01/10 Javascript
javascript表单验证 - Parsley.js使用和配置
2013/01/25 Javascript
JavaScript异步编程:异步数据收集的具体方法
2013/08/19 Javascript
jquery.post用法关于type设置问题补充
2014/01/03 Javascript
JavaScript中的prototype.bind()方法介绍
2014/04/04 Javascript
nodejs npm package.json中文文档
2014/09/04 NodeJs
JavaScript中的值类型转换介绍
2014/12/31 Javascript
JS实用技巧小结(屏蔽错误、div滚动条设置、背景图片位置等)
2016/06/16 Javascript
详解js中的apply与call的用法
2016/07/30 Javascript
js学习总结_轮播图之渐隐渐现版(实例讲解)
2017/07/17 Javascript
用最简单的方法判断JavaScript中this的指向(推荐)
2017/09/04 Javascript
基于vue实现可搜索下拉框定制组件
2020/03/26 Javascript
基于vue 实现表单中password输入的显示与隐藏功能
2019/07/19 Javascript
详解JavaScript 异步编程
2020/07/13 Javascript
[46:40]VGJ.T vs Winstrike 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
详解10个可以快速用Python进行数据分析的小技巧
2019/06/24 Python
python中dict()的高级用法实现
2019/11/13 Python
python 实现Flask中返回图片流给前端展示
2020/01/09 Python
Python turtle画图库&amp;&amp;画姓名实例
2020/01/19 Python
使用HTML5进行SVG矢量图形绘制的入门教程
2016/02/19 HTML / CSS
现场施工员岗位职责
2014/03/10 职场文书
国际经济贸易专业自荐信
2014/06/13 职场文书
管理岗位竞聘演讲稿
2014/08/18 职场文书
超市开店计划书
2014/09/15 职场文书
配置Kubernetes外网访问集群
2022/03/31 Servers
Java处理延时任务的常用几种解决方案
2022/06/01 Java/Android