浅谈JavaScript正则表达式分组匹配


Posted in Javascript onApril 10, 2015

语法

元字符:(pattern)

作用:用于反复匹配的分组

属性$1~$9

如果它(们)存在,用于得到对应分组中匹配到的子串

\1或$1

用于匹配第一个分组中的内容

\2或$2

用于匹配第一个分组中的内容

...

\9或$9

用于匹配第一个分组中的内容

用法示例

var reg = /(A+)((B|C|D)+)(E+)/gi;//该正则表达式有4个分组
//对应关系
//RegExp.$1 <-> (A+)
//RegExp.$2 <-> ((B|C|D)+)
//RegExp.$3 <-> (B|C|D)
//RegExp.$4 <-> (E+)

以上的代码也同时给出了$1~$9的用法

$1~$9是正则表达式预定义的静态属性,通过RegExp.$1引用

分组嵌套关系说明

上述代码也可以说明分组的嵌套关系

//测试环境  Chrome浏览器
var str = "ABCDE";
var reg = /(A+)((B|C|D)+)(E+)/gi;
str.match(reg);//输出:["ABCDE"]
reg.exec(str,'i');//输出:["ABCDE", "A", "BCD", "D", "E"]
RegExp.$1;//输出:"A"
RegExp.$2;//输出:"BCD"
RegExp.$3;//输出:"D"
RegExp.$4;//输出:"E"

这样就可以很明白的看出分组的嵌套关系了

总结来说:大的分组中存在小的分组时,小的分组是排在该大分组后面的分组,以此类推

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
基于jquery的设置页面文本框 只能输入数字的实现代码
Apr 19 Javascript
最佳6款用于移动网站开发的jQuery 图片滑块插件小结
Jul 20 Javascript
jquery DIV撑大让滚动条滚到最底部代码
Jun 06 Javascript
3种不同方式的焦点图轮播特效分享
Oct 30 Javascript
jQuery实现下拉加载功能实例代码
Apr 01 Javascript
基于百度地图实现产品销售的单位位置查看功能设计与实现
Oct 21 Javascript
Vue.js tab实现选项卡切换
May 16 Javascript
layui当点击文本框时弹出选择框,显示选择内容的例子
Sep 02 Javascript
ES6实现图片切换特效代码
Jan 14 Javascript
微信小程序实现同时上传多张图片
Feb 03 Javascript
微信小程序入门之绘制时钟
Oct 22 Javascript
jQuery实现影院选座订座效果
Apr 13 jQuery
JavaScript实现基于Cookie的存储类实例
Apr 10 #Javascript
JavaScript 变量、作用域及内存
Apr 08 #Javascript
JavaScript Function函数类型介绍
Apr 08 #Javascript
JavaScript 模块化编程(笔记)
Apr 08 #Javascript
JavaScript DOM事件(笔记)
Apr 08 #Javascript
javascript笛卡尔积算法实现方法
Apr 08 #Javascript
JavaScript获取指定元素位置的方法
Apr 08 #Javascript
You might like
PHP 线程安全与非线程安全版本的区别深入解析
2013/08/06 PHP
php不允许用户提交空表单(php空值判断)
2013/11/12 PHP
PHP实现批量生成App各种尺寸Logo
2015/03/19 PHP
浅谈PHP5.6 与 PHP7.0 区别
2019/10/09 PHP
JQuery 引发两次$(document.ready)事件
2010/01/15 Javascript
jquery中dom操作和事件的实例学习 下拉框应用
2011/12/01 Javascript
js验证是否为数字的总结
2013/04/14 Javascript
用表格输出1-1000之间的数字实现代码(附特效)
2013/04/21 Javascript
详解javascript实现瀑布流列式布局
2016/01/29 Javascript
通过jquery-ui中的sortable来实现拖拽排序的简单实例
2016/05/24 Javascript
JS实现表单验证功能(验证手机号是否存在,验证码倒计时)
2016/10/11 Javascript
Javascript 跨域知识详细介绍
2016/10/30 Javascript
JavaScript中如何判断一个值的类型
2017/09/15 Javascript
vue如何引入sass全局变量
2018/06/28 Javascript
vue解决弹出蒙层滑动穿透问题的方法
2018/09/22 Javascript
Node.js API详解之 querystring用法实例分析
2020/04/29 Javascript
浅谈Ant Design Pro 菜单自定义 icon
2020/11/17 Javascript
Python2.5/2.6实用教程 入门基础篇
2009/11/29 Python
使用python BeautifulSoup库抓取58手机维修信息
2013/11/21 Python
PYTHON压平嵌套列表的简单实现
2016/06/08 Python
Python 爬虫模拟登陆知乎
2016/09/23 Python
python实现排序算法解析
2018/09/08 Python
使用Python3+PyQT5+Pyserial 实现简单的串口工具方法
2019/02/13 Python
python selenium执行所有测试用例并生成报告的方法
2019/02/13 Python
Python:Numpy 求平均向量的实例
2019/06/29 Python
PyTorch中torch.tensor与torch.Tensor的区别详解
2020/05/18 Python
VSCode 自定义html5模板的实现
2019/12/05 HTML / CSS
美国饼干礼物和美食甜点购买网站:Cheryl’s
2020/05/28 全球购物
大学生实习感言
2014/01/16 职场文书
员工安全责任书范本
2014/07/24 职场文书
大国崛起英国观后感
2015/06/02 职场文书
五星红旗迎风飘扬观后感
2015/06/17 职场文书
民间借贷纠纷答辩状
2015/08/03 职场文书
小学语文教学随笔
2015/08/14 职场文书
python中%格式表达式实例用法
2021/06/18 Python
利用python进行数据加载
2021/06/20 Python