RegExp类型
var expression = /pattern/ flags;
正则表达式的匹配模式支持3个标志(flag);
g:全局模式,模式将应用于所有字符串,而不是发现第一个匹配项就停止;
i:表示不区分大小写;
m:表示多行模式,即在到达一行文本末尾时还会继续查找下一行中是都存在与模式匹配的项;
这里再复习一下正则表达式的基本语法
. 任意一个字符,不推荐使用;
转义字符 用\来取消字符的特殊意义;
\d 0-9任意一个数字;
\w 任意一个字母或数字或下划线;
\s 包括空格、制表符、换行符等空白字符;
\D 与\d相反,除了数字之外的其他字符;
\W 与\w相反,匹配字母、数字、下划线之外的字符;
\S 与\s相反,匹配空白字符之外的字符;
[] 字符集合,匹配方括号中任意一个字符;
[^] 匹配方括号中字符之外的任意字符;
[\u4e00-\u9fff] 匹配任意一个汉字;
? 表达式匹配0或1次;
+ 表达式至少出现1次;
* 表达式不出现或出现任意次;
{n} 表达式重复n次;
{m,n} 表达式至少重复m次,至多重复n次;
{m,} 表达式至少重复m次;
^ 字符边界,与字符串开始的地方匹配,例如“^[a-zA-Z]”表示以字母开头;
$ 字符边界,与字符串结束的地方匹配;
\b 字符边界,匹配一个单词边界,例如“\bto\b”只匹配单独出现的“to”,不匹配含“to”的单词;
\B 与\b相反,匹配非单词边界,例如“\Bto\B”只能匹配出现在单词中的“to”;
断言的语法下次补充。。。。。
除了开头所说的用字面量形式定义的正则表达式,还可以使用RegExp构造函数,它接收两个参数:一个是要匹配的字符串模式,另一个是可选的标志字符串(即g、i、m)
var pattern2 = new RegExp("[bc]at","i"); 匹配第一个“bat”或“cat”,不区分大小写