选择在 a 后面跟着 b 的 a, a 的后面跟的是 b ,但是 b 不参与选择,b 只参与修饰
正向预查 正向断言
var str = 'abaaaaaaa';
var reg = /a(?=b)/g;
将 a 的后面不是 b 的匹配出来
var str = 'abaaaaaaa';
var reg = /a(?!b)/g;
贪婪原则:
var str = 'abaaaaaaa';
var reg = /a+/g;
var str = 'aaaaa';
var reg = /a{1,3}?/g;
第一个问号代表量词范围是0-1,第二个问号代表取消匹配
var str = 'aaaaa';
var reg = /a??/g;
var str = 'aaaaa';
var reg = /a*?/g;
一片两片三四片,;落尽正则全不见
上面的小标题译成正则就是{1},{2}.{3,4},{1,}
c{n}
{1}表示一个的意思
/c{1}/只能匹配一个c
/c{2}/ 只能匹配两个连续的c
以此类推
/c{n}/ 则会匹配n个连续的 c
看下面的例子:
reg=/c{1}/;
str='cainiao';
execReg(reg,str)
返回结果
利用正则表达式给字符串去重
var str = 'aaaaaaabbbbbbbbcccccccccc';
var reg = /(\w)\1*/g;
// str.replace(reg, '$1');
console.log(str.replace(reg, '$1'));