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 相关文章推荐
jQuery 各种浏览器下获得日期区别
Dec 22 Javascript
获得Javascript对象属性个数的示例代码
Nov 21 Javascript
JavaScript中的prototype和constructor简明总结
Apr 05 Javascript
用javascript关闭本窗口技巧小结
Sep 05 Javascript
node.js中的fs.rmdir方法使用说明
Dec 16 Javascript
解决微信浏览器Javascript无法使用window.location.reload()刷新页面
Jun 21 Javascript
jQuery Easyui datagrid editor为combobox时指定数据源实例
Dec 19 Javascript
three.js绘制地球、飞机与轨迹的效果示例
Feb 28 Javascript
jQuery中table数据的值拷贝和拆分
Mar 19 Javascript
jQuery 实时保存页面动态添加的数据的示例
Aug 14 jQuery
微信小程序实现手势图案锁屏功能
Jan 30 Javascript
微信小程序外卖选购页实现切换分类与数量加减功能案例
Jan 15 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
Zend Framework教程之Zend_Db_Table_Row用法实例分析
2016/03/21 PHP
Yii2 输出xml格式数据的方法
2016/05/03 PHP
解决安装WampServer时提示缺少msvcr110.dll文件的问题
2017/07/09 PHP
php使用fullcalendar日历插件详解
2019/03/06 PHP
php+ajax实现商品对比功能示例
2019/04/13 PHP
iframe自适应宽度、高度 ie6 7 8,firefox 3.86下测试通过
2010/07/29 Javascript
js substr、substring和slice使用说明小记
2011/09/15 Javascript
js特殊字符过滤的示例代码
2014/03/05 Javascript
AngularJS语法详解
2015/01/23 Javascript
jQuery UI库中dialog对话框功能使用全解析
2016/04/23 Javascript
JS中this上下文对象使用方式
2016/10/09 Javascript
集合Bootstrap自定义confirm提示效果
2017/09/19 Javascript
JS中this的指向以及call、apply的作用
2018/05/06 Javascript
详解vue-cli 构建项目 vue-cli请求后台接口 vue-cli使用axios、sass、swiper
2018/05/28 Javascript
jQuery easyui datagird编辑行删除行功能的实现代码
2018/09/20 jQuery
Angular 实现输入框中显示文章标签的实例代码
2018/11/07 Javascript
微信小程序当前时间时段选择器插件使用方法详解
2018/12/28 Javascript
Vue2(三)实现子菜单展开收缩,带动画效果实现方法
2019/04/28 Javascript
Vue发布项目实例讲解
2019/07/17 Javascript
浅析vue cli3 封装Svgicon组件正确姿势(推荐)
2020/04/27 Javascript
详解Vue3 Teleport 的实践及原理
2020/12/02 Vue.js
[06:04]DOTA2英雄梦之声Vol19卓尔游侠
2014/06/20 DOTA
pygame实现贪吃蛇游戏(上)
2019/10/29 Python
基于python的docx模块处理word和WPS的docx格式文件方式
2020/02/13 Python
利用Python将图片中扭曲矩形的复原
2020/09/07 Python
Python 数据分析之逐块读取文本的实现
2020/12/14 Python
Pandas直接读取sql脚本的方法
2021/01/21 Python
jupyter 添加不同内核的操作
2021/02/06 Python
一款基于css3麻将筛子3D翻转特效的实例教程
2014/12/31 HTML / CSS
北美最大的手工艺品零售商之一:Michaels Stores
2019/02/27 全球购物
利用异或运算实现两个无符号数的加法运算
2013/12/20 面试题
Linux管理员面试经常问道的相关命令
2014/12/12 面试题
《一件运动衫》教学反思
2014/02/19 职场文书
2015年保送生自荐信
2015/03/24 职场文书
2016年教育局“我们的节日——端午节”主题活动总结
2016/04/01 职场文书
使用redis生成唯一编号及原理示例详解
2021/09/15 Redis