(……续例16)ide
例17:顺序正向、顺序负向预搜索匹配
spa
- void function reg_17()
- {
- var s = "1024 used 2048 free";
- var r = /\d{4}(?= used)/g; //4位数字后紧跟" used"
- alert(s.match(r));
- r = /\d{4}(?! used)/g; //4位数字后不能跟有" used"
- alert(s.match(r));
- //JScript不支持逆序正向和逆序负向预搜索
- }
行4:(?= used)符号表示预搜索,即只用来做为匹配的条件,但其自己并不用于匹配,这里是指4位数字后必须是 used,注意used前面有一个空格,共计5个字符,但 used这5个字符并不参与匹配。
行6:(?! used)符号一样表示预搜索,不一样的是,要求后面不是 used这5个字符。
运行结果:第一次匹配了1024这4个字符,由于后面刚好是 used这5个字符;第二次匹配了2048这4个字符,由于只有2048知足:由4个数字构成且后面不是 used这5个字符。ip
(未完待续……)string