官方解釋
Character:x(?=y)
Meaning:Matches x only if x is followed by y.
解釋:當x后面跟著y(即y的正則匹配成功)的時候拔疚,匹配成功
Character:x(?!y)
Meaning:Matches a number only if it is not followed by a decimal point.
解釋:當x后面跟的不是y(即y的正則匹配成功)的時候,匹配成功
例子
// 定義
let reg1 = new RegExp('Kim(?=Yin)');
let reg2 = new RegExp('Kim(?!Yin)');
// 測試1
reg1.test('Kim'); // false
reg2.test('Kim'); // true
// 測試2
reg1.test('KimY'); // false
reg2.test('KimY'); // true
// 測試3
reg1.test('KimYin'); // true
reg2.test('KimYin'); // false
延伸
// 稍后補上