JS 正则表达式

一、创建正则表达式

1.方式1:使用关键字new创建
var patt = new RegExp(正则表达式的内容,模式);


2.方式2:使用正则表达式直接量
var pa = /girl/gi;
注: gi 全局 忽略大小写


二、正则表达式的方法

1.test 方法
正则表达式对象.test(字符串)

  • 参数:要匹配的字符串
  • 返回值:匹配成功返回true,失败返回false
JS 正则表达式_第1张图片
Paste_Image.png

2.exec方法
exec(字符串):该方法为专门为捕获组而设计的

  • 参数:要匹配的字符串

  • 返回值:返回的是一个数组。如果不匹配则返回null

JS 正则表达式_第2张图片
Paste_Image.png

三、正则表达式规则

正则表达式元字符是包含特殊含义的字符。它们有一些特殊功能,可以控制匹配模式的
方式。反斜杠后的元字符将失去其特殊含义。
字符类:单个字符和数字
[0-9A-Za-z]  
元字符/元符号                 匹配情况
.                       匹配除换行符外的任意字符
[a-z0-9]                    匹配括号中的字符集中的任意字符
[^a-z0-9]                   匹配任意不在括号中的字符集中的字符
\d ==[0-9]                  匹配数字
\D ==[^0-9]                     匹配非数字,同[^0-9]相同
\w  [0-9A-Za-z_]                    匹配字母和数字及_
\W                      匹配非(字母和数字及_)

字符类:空白字符
元字符/元符号                 匹配情况
\0                          匹配null 字符
\b                          匹配空格字符 
\n                          匹配换行符
\r                          匹配回车字符
\t                          匹配制表符
\s                          匹配空白字符、空格、制表符和换行符
\S                          匹配非空白字符

字符类:锚字符

元字符/元符号                 匹配情况
^                           行首匹配
$                           行尾匹配

字符类:重复字符
元字符/元符号                             匹配情况
?  例如(x?)                           匹配0个或1 个x
*  例如(x*)                           匹配0个或任意多个x
+  例如(x+)                           匹配至少一个x
(xyz)+                                  匹配至少一个(xyz)
{m,n} 例如x{m,n}  n>=次数>=m            匹配最少m个、最多n个x
{n}                                     匹配前一项n次     
{n,}                                    匹配前一项n次,或者多次 
JS 正则表达式_第3张图片
Paste_Image.png

四、字符串支持正则的四个方法

1.search检索与正则表达式相匹配的第一个匹配项的索引。总是从0开始找

JS 正则表达式_第4张图片
Paste_Image.png

2.match 找到一个或多个正则表达式的匹配。

JS 正则表达式_第5张图片
Paste_Image.png

获取网页中的图片

JS 正则表达式_第6张图片
Paste_Image.png

3.replace 替换与正则表达式匹配的字符串。

JS 正则表达式_第7张图片
Paste_Image.png

4.split 把字符串分割为字符串数组。

JS 正则表达式_第8张图片
Paste_Image.png

你可能感兴趣的:(JS 正则表达式)