🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
## 一、\cx元字符 > 匹配由x指明的控制字符。例如,\cM匹配一个Control-M或回车符。x的值必须为A-Z或a-z之一。否则,将c视为一个原义的“c”字符。 示例1: ~~~ console.log(/\cM/.test("回车符\r")); // true // 或 console.log(new RegExp('\\cm').test("回车符\r")); // true ~~~ ## 二、贪婪模式与惰性模式 > 贪婪模式的限定符:+, ?, *, {n}, {n,}, {n,m} > 惰性模式:+?, ?, *?, {n}?, {n,}?, {n,m}? 贪婪模式 ``` var pattern = /8[a-zA-Z0-9]*7/g; var string = "abc8defghij7klngon8qrstwxy7"; console.log(string.match(pattern)) // ["8defghij7klngon8qrstwxy7"] ``` 惰性模式(简单的加个?号) ``` var pattern = /8[a-zA-Z0-9]*?7/; var string = "abc8defghij7klngon8qrstwxy7"; console.log(string.match(pattern)) // ["8defghij7"] ``` ## 三、\num 匹配num,其中num是一个正整数。对所获取的匹配的引用。例如,“(.)\1”匹配两个连续的相同字符。 示例:顺序字符串去重 ``` var str = 'a,a,b,b,b,cc'; console.log(str.replace(/(\w,).*\1/g, '$1')); // a,b,cc ```