正则表达式

正则表达式

用一定的模式匹配对应的字符串

修饰符

用于执行区分大小写和全局匹配

  • i :执行对大小写不敏感的匹配
  • g:执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)
  • m:执行多行匹配

方括号

用于查找某个范围内的字符

表达式 描述
[abc] 查找方括号中的所有字符
[^abc] 查找任何不在方括号之间的字符
[0-9] 查找任何从0到9的数字
[a-z] 查找任何从小写a到小写z之间的字符
[A-Z] 查找任何从大写A到大写Z之间的字符
[A-z] 查找任何从大写A到小写z之间的字符
[adgk] 查找给定集合内的任何字符
[^adgk] 查找给定集合外的任何字符
[red | blue | green] 查找任何指定的选项

元字符

拥有特殊含义的字符

元字符 描述
· 查找单个字符,除了换行符和行结束符
\w 查找单词字符
\W 查找非单词字符
\d 查找数字
\D 查找非数字字符
\s 查找空白字符
\S 查找非空白字符
\b 匹配单词边界
\B 匹配非单词边界
\0 查找NULL字符
\n 查找换行符
\f 查找换页符
\r 查找回车符
\t 查找制表符
\v 查找垂直制表符
\xxx 查找以把机制数xxx规定的字符
\xdd 查找以十六进制dd规定的字符
\uxxxx 查找以十六进制数xxxx规定的Unicode字符

量词

用于表示重复次数的含义

量词 描述
n+ 匹配任何包含至少一个n的字符串
n* 匹配任何包含零个或多个n的字符串
n? 匹配任何包含零个或一个n的字符串
n 匹配包含X个n的序列的字符串
n X是一个正整数,前面的模式n连续出现至少X次时匹配
n X和Y为正整数,模式n连续出现至少X次,至多出现Y次时匹配
n$ 匹配任何结尾为n的字符串
^n 匹配任何开头为n的字符串
?=n 匹配任何其后紧接指定字符串n的字符串
?!n 匹配任何其后没有紧接指定字符串n的字符串

ReExp对象方法

方法 描述
compile 编译正则表达式
exec 检索字符串中指定的值,并确定其位置
test 检索字符串中指定的值,返回true或false

支持正则表达式的String对象的方法

方法 描述
search 检索与正则表达式相匹配的值
match 找到一个或多个正则表达式的匹配
replace 替换与震泽表达式匹配的子串
split 把字符串分割为字符串数组

正则表达式的使用

  • test方法:搜索字符串指定的值,根据结果并返回真或假。
  • exec()方法:检索字符串中的指定值,返回值是被找到的值,如果没有发现匹配,返回null。
var patt1 = new RegExp("e");
document.write(patt1.test("The best things in life are free"));
var patt1 = new RegExp("e");
document.write(patt1.exec("The best things in life are free"));
posted @ 2021-03-05 19:03  水中月-幻  阅读(50)  评论(0编辑  收藏  举报