-
定义和匹配方法的使用
-
定义
-
字面量定义
let reg = /abc/;
javascript脚本加载后,正则表达式字面量会被编译。当正则表达式保持不变时,使用此方法可获得更好的性能。
-
构造函数定义
let reg = new RegExp("abc");
javascript脚本运行过程中,用构造函数创建的正则表达式会被编译。如果正则表达式将会改变,或者它将会从用户输入等来源动态产生,就需要用构造函数来创建正则表达式。
-
-
匹配
方法 描述 类型 test 测试是否匹配正则表达式,返回 true 或 false RegExp方法 match 查找匹配,返回一个数组,在未匹配到时会返回 null String方法 replace 查找匹配,并且使用替换字符串替换掉匹配到的子字符串 String方法 split 使用正则表达式或者一个固定字符串分隔一个字符串,并将分隔后的子字符串存储到数组中 String方法 exec 查找匹配,返回一个数组,在未匹配到时会返回 null RegExp方法 matchAll 查找匹配,返回一个迭代器(interator) String方法 search 测试匹配,返回匹配到的位置索引,在失败时返回-1 String方法 使用示例如下:
//定义 let reg = /d(b+)d/g; //或 let reg = new RegExp("d(b+)d", "g"); //test方法使用 let testResult = reg.test("cdbbdbsbz"); console.log(testResult); //true //match方法使用 let str = "cdbbdbsbz" let matchResult = str.match(reg); console.log(matchResult); //Array["dbbd"] //replace方法使用 let str = "cdbbdbsbz" let replaceResult = str.replace(reg,'x'); console.log(replaceResult); //cxbsbz //split方法使用 let str = "cdbbdbsbz" let splitResult = str.split(''); console.log(splitResult); //["c", "d", "b", "b", "d", "b", "s", "b", "z"] //exec方法使用 let execResult = reg.exec("cdbbdbsbz"); console.log(execResult); //Array["dbbd","bb"] //matchAll方法使用 let str = "cdbbdbsbz" let matchAllResult = str.matchAll(reg); console.log(...matchAllResult); //Array["dbbd","bb"] //search方法使用 let str = "cdbbdbsbz" let searchResult = str.search(reg); console.log(searchResult); //1
-
-
基础知识
-
元字符
字符 说明 . 除换行符以外的任意字符 \w 字母、数字或下划线 \s 空白字符(包括空格、制表符 \t或\v
、换页符\f
和换行符\n
)\d 数字 \b 单词的开始或结束 ^ 字符串的开始 $ 字符串的结束 -
重复限定符
语法 说明 * 重复零次或更多次 + 重复一次或更多次 ? 重复零次或一次 {n} 重复n次 {n,} 重复n次或更多次 {n,m} 重复n到m次 -
断言
字符 说明 x(?=y) 正向先行断言,匹配 x
仅仅当x
后面跟着y
(?<=y)x 正向后行断言,匹配 x
仅当x
前面是y
x(?!y) 负向先行断言,当 x
后面跟着y
不匹配x
(?<!y)x 负向后行断言,仅当 x
前面是y不
匹配x
-
反义
字符 说明 \W 非字母、数字或下划线 \S 非空白字符 \D 非数字字符 \B 不是单词开头和结束 [^X] 除了x以外的任意字符 -
其他
符号 说明 () 分组 \ 转义 | 或 & 与 [0-9] 数字0-9 [A-Z] 大写字母A-Z [a-z] 小写字母a-z [\u4e00-\u9fa5] 中文字符 [^\x00-\xff] 双字节字符 -
正则表达式标志
标志 说明 g 全局搜索 i 不区分大小写搜索 m 多行搜索 s 允许 .
匹配换行符u 使用Unicode编码的形式进行匹配 y 执行“粘性”搜索,匹配从目标字符串的当期位置开始,可以使用y标志 -
-
前端常用正则表达式
javascript正则表达式基本使用
最新推荐文章于 2022-08-11 20:29:04 发布