今天看书看到作者讲到正则,感觉自己又有所领悟,翻出来重新理解了一下。
如今我的理解是这样的,我将<记为方向,包含这个箭头说明是放在目标内容左边的:
-
?= : 询问后面跟着的东西是否等于这个 /b(?=a)/.test(‘bab’)
-
?<= : 询问是否以这个东西开头 /(?<=a)b/.test(‘ab’)
-
?! : 询问后面跟着的东西是否不是这个 /b(?!a)/.test(‘bb’)
-
?
其实按照我这样理解的话,?! 后面要是加上=就更加符合我的心理预期了,最后还有一点,匹配得到的结果并不包含 ?=、?<=、?!和? 顺便记录一下
javascript的replace方法的第二个参数,如果是传入的字符串的话,有几个特殊的东西。
1. ```$&`` : 表示匹配到的结果。'javascript'.replace(/script/, '$&$&') -> ‘javascriptscript’ 2. ```$```` : 表示匹配到的结果的左边或者说前面的那一堆字符串。 'javascript'.replace(/script/, '$& 不是 $`') -> "javascript 不是 java" 3. ```$'``` : 表示匹配到的结果的右边或者说后面的那一堆字符串。 '我是猪'.replace(/我是/, "$&$'") -> "我是猪猪" 4. ```$$``` : 表示$字符。
作者:不过从心而已
来源:简书



