字符类、单个字符和数字 | |
---|---|
元字符/元符号 | 匹配情况 |
* | 匹配出换行符外的任意字符 |
[a-z0-9] | 匹配括号中的字符集中的任意字符 |
[^a-z0-9] | 匹配任意不在括号中的字符集中的字符 |
\d | 匹配数字 |
\D | 匹配非数字,即与[^0-9] |
\w | 匹配字母和数字及_ |
\W | 匹配非字母数字和_ |
字符类:空白字符 | |
---|---|
元字符/元符号 | 匹配情况 |
\0 | 匹配null字符 |
\b | 匹配空格字符 |
\f | 匹配进纸(进纸换页)字符 |
\n | 匹配换行符 |
\r | 匹配回车字符 |
\t | 匹配制表符 |
\s | 匹配空白字符、空格、制表符和换行符 |
\S | 匹配非空白字符、空格、制表符和换行符 |
字符类:锚字符 | |
---|---|
元字符/元符号 | 匹配情况 |
^ | 行首匹配 |
$ | 行尾匹配 |
\A | 只有匹配字符串开始处 |
\b | 匹配单词边界,词在[]内时无效 |
\B | 匹配非单词边界 |
\G | 匹配当前搜索的开始位置 |
\Z | 只匹配字符串结束处或行尾 |
\z | 只匹配字符串结束处 |
字符串:重复字符 | |
---|---|
元字符/元符号 | 匹配情况 |
x? | 匹配0个或1个x |
x* | 匹配0个或任意多个x |
x+ | 匹配至少一个x |
{xyz}+ | 匹配至少一个{xyz} |
x{m,n} | 匹配最少m个,最多n个x |
字符类:替代字符 | |
---|---|
元字符\元符号 | 匹配情况 |
this\where\logo | 匹配this或者where或者logo |
正则表达式方法做匹配 reg.方法(str)
1、reg.test(str);
检查字符串是否与正则匹配,返回布尔值
2、reg.exec(str);
返回字符串中首次与正则匹配的值
3、reg.compile(regexp);
重新编译正则
字符串匹配正则的方法:str.方法(reg)
1、str.search()
参数是正则,将会从开始查找字符串中与正则匹配的字符,并返回该字符的第一次出现的位置,没有则返回-1,应为每次搜索都是从开始搜索,所以只返回第一次出现的位置.
2、str.replace();
是js中常用的替换操作。
a、简单替换
b、全局替换 str.replace("/a/g","b");//将字符串里所有的a替换为b
3、str.match();
最常用的正则的匹配方法,只有一个正则参数,返回匹配的字符串数组。
4、str.split();
根据某个字符分割成数组,有两个参数(可选),第一个是匹配的项,可以是字符也可以是正则,第二个是生成数组的个数。第二个参数为空,则整个字符串都会被分割