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实现flash8类似的连接效果
May 03 Javascript
this和执行上下文实现代码
Jul 01 Javascript
jQuery实现点击标题输入详细信息
Apr 16 Javascript
javascript匿名函数实例分析
Nov 18 Javascript
jQuery中outerWidth()方法用法实例
Jan 19 Javascript
js控制元素显示在屏幕固定位置及监听屏幕高度变化的方法
Aug 11 Javascript
Bootstrap每天必学之标签与徽章
Nov 27 Javascript
借助node实战JSONP跨域实例
Mar 30 Javascript
vue-cli 引入jQuery,Bootstrap,popper的方法
Sep 03 jQuery
vue 实现特定条件下绑定事件
Nov 09 Javascript
JavaScript前端开发时数值运算的小技巧
Jul 28 Javascript
javascript实现雪花飘落效果
Aug 19 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 fread()使用技巧
2010/01/22 PHP
php学习笔记 数组遍历实现代码
2011/06/09 PHP
采用PHP函数memory_get_usage获取PHP内存清耗量的方法
2011/12/06 PHP
js用Date对象处理时间实现思路及代码
2013/01/31 Javascript
Jquery事件的连接使用示例
2013/06/18 Javascript
用jquery生成二级菜单的实例代码
2013/06/24 Javascript
在父页面调用子页面的JS方法
2013/09/29 Javascript
引用其它js时如何同时处理多个window.onload事件
2014/09/02 Javascript
JavaScript对数组进行随机重排的方法
2015/07/22 Javascript
javascript实现五星评价代码(源码下载)
2015/08/11 Javascript
学习使用AngularJS文件上传控件
2016/02/16 Javascript
JQuery的常用选择器、过滤器、方法全面介绍
2016/05/25 Javascript
JavaScript数组去重的6个方法
2017/01/21 Javascript
浅谈Vue.js
2017/03/02 Javascript
Node.js和Express简单入门介绍
2017/03/24 Javascript
Angular2 之 路由与导航详细介绍
2017/05/26 Javascript
Bootstrap图片轮播效果详解
2017/10/17 Javascript
JavaScript中 ES6变量的结构赋值
2018/07/10 Javascript
vue-cli 目录结构详细讲解总结
2019/01/15 Javascript
NodeJs 实现简单WebSocket即时通讯的示例代码
2019/08/05 NodeJs
通过angular CDK实现页面元素拖放的步骤详解
2020/07/01 Javascript
vue-cli3配置favicon.ico和title的流程
2020/10/27 Javascript
[05:04]DOTA2上海特级锦标赛主赛事第二日TOP10
2016/03/04 DOTA
python计算N天之后日期的方法
2015/03/31 Python
python框架中flask知识点总结
2018/08/17 Python
python3学生名片管理v2.0版
2018/11/29 Python
使用Python将字符串转换为格式化的日期时间字符串
2019/09/01 Python
python实现的分层随机抽样案例
2020/02/25 Python
Anaconda和ipython环境适配的实现
2020/04/22 Python
Sneaker Studio捷克:购买运动鞋
2018/07/08 全球购物
纽约香氛品牌:NEST Fragrance
2018/10/15 全球购物
编程输出如下图形
2013/11/24 面试题
交通安全演讲稿
2014/01/07 职场文书
国旗下讲话演讲稿
2014/05/08 职场文书
纪委书记群众路线整改措施思想汇报
2014/10/09 职场文书
2014年客房部工作总结
2014/11/22 职场文书