引用类型 ( 对象定义 )——RegExp 类型

var expression = /pattern/flags;

以上为创建正则表达式格式,斜线包围的为正则表达式,flags 有三个值可以选择

本文地址:http://www.cnblogs.com/veinyin/p/7607769.html 

1 flags 可选值:

  • g : 全局 ( global ) 模式,应用于所有字符串,而非遇到第一个匹配项即停止

  • i : 不区分大小写 ( case-insensitive ) 模式,匹配时忽略模式与字符串的大小写

  • m : 多行 ( multiline ) 模式,在到达一行末尾时还会继续查找下一行中是否存在于模式匹配的项

2 RegExp 实例方法

2.1 exec() :

主要方法,用于捕获组

接受一个应用模式的字符串,返回第一个匹配项信息的数组,没有匹配项返回 null

1 var pattern = /regex/g
2 
3 var matches = parttern.exec(text);
4 
5 alert(matches.index);
6 
7 alert(matches[0]);
8 
9 alert(pattern.lastIndex);

 

2.2 test() :

返回值为 true 或 false,故常用于 if 语句

if(pattern.test(text)) statement;

 

3 RegExp 构造函数属性

3.1 由于短属性名 opera 不太支持,比较偏爱长属性名

1 alert(RegExp.lastMatch);        //输出最近一个匹配项 ( 与整个正则表达式匹配的字符串 )
2 
3 alert(RegExp.input);            //输出最近一次要匹配的字符串 ( 原始字符串 )
4 
5 alert(RegExp.lastParen);        //输出最近一次匹配的捕获组 
6 
7 alert(RegExp.rightContext);     //匹配字符串后的字符串
8 
9 alert(RegExp.leftContext);      //匹配字符串前的字符串

 

3.2  9 个用于存储捕获组的构造函数属性

依次为 RegExp.$1 ~ RegExp.$9,分别用于存储第一 ~ 第九个匹配的捕获组,在调用上面两个实例方法时,这些属性将会自动填充

posted @ 2017-09-28 17:42  yuhui_yin  阅读(397)  评论(0编辑  收藏  举报