正则表达式之?=和?!的用法

2017-09-20  本文已影响0人  KimYYX

官方解释

RegExp - JavaScript | MDN

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

延伸

// 稍后补上
上一篇 下一篇

猜你喜欢

热点阅读