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 冒泡排序 正序和倒序实现代码
Dec 14 Javascript
js校验表单后提交表单的三种方法总结
Feb 28 Javascript
Javascript编程中几种继承方式比较分析
Nov 28 Javascript
JS HTML5拖拽上传图片预览
Jul 18 Javascript
jQuery实现表格隔行及滑动,点击时变色的方法【测试可用】
Aug 20 Javascript
详解angularjs获取元素以及angular.element()用法
Jul 25 Javascript
Vue.js 中的实用工具方法【推荐】
Jul 04 Javascript
vue学习笔记之给组件绑定原生事件操作示例
Feb 27 Javascript
Vue初始化中的选项合并之initInternalComponent详解
Jun 11 Javascript
Vue的自定义组件不能使用click方法的解决
Jul 28 Javascript
ES6学习教程之Promise用法详解
Nov 22 Javascript
详解JVM系列之内存模型
Jun 10 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
《忧国的莫里亚蒂》先导宣传图与STAFF公开
2020/03/04 日漫
仿Aspnetpager的一个PHP分页类代码 附源码下载
2012/10/08 PHP
Drupal简体中文语言包安装教程
2014/09/27 PHP
php实现专业获取网站SEO信息类实例
2015/04/02 PHP
php语法检查的方法总结
2019/01/21 PHP
Jquery练习之表单验证实现代码
2010/12/14 Javascript
JQuery操作三大控件(下拉,单选,复选)的方法
2013/08/06 Javascript
解析JavaScript中的不可见数据类型
2013/12/02 Javascript
浅析2种JavaScript继承方式
2015/12/04 Javascript
jQuery实现简单隔行变色的方法
2016/02/20 Javascript
PHP 实现一种多文件上传的方法
2017/09/20 Javascript
在iFrame子页面里实现模态框的方法
2018/08/17 Javascript
vue鼠标移入添加class样式,鼠标移出去除样式(active)实现方法
2018/08/22 Javascript
vue-cli3中vue.config.js配置教程详解
2019/05/29 Javascript
详解小程序中h5页面onShow实现及跨页面通信方案
2019/05/30 Javascript
Nodejs异步流程框架async的方法
2019/06/07 NodeJs
Node.js 实现简单的无侵入式缓存框架的方法
2019/07/21 Javascript
在Python中处理列表之reverse()方法的使用教程
2015/05/21 Python
Python实现的读取/更改/写入xml文件操作示例
2018/08/30 Python
python实现图像检索的三种(直方图/OpenCV/哈希法)
2019/08/08 Python
python实现输入任意一个大写字母生成金字塔的示例
2019/10/27 Python
使用PyTorch实现MNIST手写体识别代码
2020/01/18 Python
Python自动重新加载模块详解(autoreload module)
2020/04/01 Python
英国名牌服装购物网站:OD’s Designer
2019/09/02 全球购物
后勤主管工作职责
2013/12/07 职场文书
酒店开业庆典主持词
2014/03/21 职场文书
程序员求职信
2014/04/16 职场文书
升旗仪式演讲稿
2014/05/08 职场文书
党员自我评议对照检查材料
2014/09/27 职场文书
交通事故赔偿起诉书
2015/05/20 职场文书
同意离婚答辩状
2015/05/22 职场文书
初中思品教学反思
2016/02/20 职场文书
MySQL 隔离数据列和前缀索引的使用总结
2021/05/14 MySQL
php+laravel 扫码二维码签到功能
2021/05/15 PHP
解析在浏览器地址栏输入一个URL后发生了什么
2021/06/21 Servers
mysql 生成连续日期及变量赋值
2022/03/20 MySQL