版权声明:转载请先告知哦 https://blog.csdn.net/PINK789/article/details/86554398
1、实用案例
(1)、
(2)、
(3)、
var string = "a1b2c3";
string.replace()
4、元字符
(1)正则表达式由两种基本字符类型组成:a、原义文本字符 b、元字符
(2)元字符是在正则表达式中有特殊含义的非字母字符(* + ? $ ^ . | \ () { } [ ])
符号 | \t | \v | \v | \n | \o | \f | \cX |
---|---|---|---|---|---|---|---|
含义 | 水平制表符 | 垂直制表符 | 换行符 | 回车符 | 空字符 | 换页符 | 与X对应的控制字符(Ctrl+X) |
5、字符串取反
(1)使用元字符^创建 反向类/负向类
(2)反响类:指不属于某类的内容
(3)表达式[^abc] 表示 不是字符a、b、c的内容
6、范围类
(1)[a-zA-Z] 从a到z和A-Z的任意字符(闭区间)
(2)[a-z-] 从a到z的任意字符和 -
7、预定义类(匹配常见的字符串类)
字符 | 等价类 | 含义 |
---|---|---|
. | [^\r\n] | 除了回车符和换行符之外的所有字符 |
\d | [0-9] | |
\D | [^0-9] | 非数字字符 |
\s | [\t\n\x0B\f\r] | 空白符 |
\S | [^\t\n\x0B\f\r] | 非空白符 |
\w | [a-zA-Z_0-9] | 单词字符(字母数字下划线) |
\W | [^a-zA-Z_0-9] | 非数字字符 |
匹配一个ab+数字+任意字符的字符串 ab\d. === ab[0-9][^\r\n]
8、边界
字符 | ^ | $ | \b | \B |
---|---|---|---|---|
含义 | 以xxx开始 | 以xxx结束 | 单词边界 | 非单词边界 |
"this is a".replace(/is/g,"0"); //"th0 0 a"
"this is a".replace(/\bis\b/g,"0"); //"this 0 a"
"this is a".replace(/\Bis\b/g,"0"); //"th0 is a"
"@123@abc@".replace(/@./g,"Q"); //"Q23Qbc@"
"@123@abc@".replace(/^@./g,"Q"); //"Q23@abc@"
"@123@abc@".replace(/.@/g,"Q"); //"@12QabQ"
"@123@abc@".replace(/.@$/g,"Q"); //"@123@abQ"