要匹配一个正则前面的字符是aaa,后面的字符是bbb的字符串 (但是不要aaa和bbb)
如
aaaerbbbrwwaaasdsdsbbbsdfsfaaawerwrbbb要获得er,sdsds,werwr
/(?=aaa)\w+?(?=bbb)/g但是得到是aaaer,aaasdsds,aaawerwr开头都多了一个aaa似乎后面的一个(?=)起作用了,但是开头的(?=)并没有起作用这为什么?应该如何写呢
如
aaaerbbbrwwaaasdsdsbbbsdfsfaaawerwrbbb要获得er,sdsds,werwr
/(?=aaa)\w+?(?=bbb)/g但是得到是aaaer,aaasdsds,aaawerwr开头都多了一个aaa似乎后面的一个(?=)起作用了,但是开头的(?=)并没有起作用这为什么?应该如何写呢
reg = /aaa(\w*?)(?=bbb)/g
while(reg.exec(s))
alert(RegExp.$1);//JS不支持(?<=)
var str = "aaaerbbbrwwaaasdsdsbbbsdfsfaaawerwrbbb";
var array = [];
var e = regex.exec(str); while(e)
{
array.push(e[1]);
var index = str.indexOf(e[0])+e[0].length;
str = str.substring(index,str.length);
e=regex.exec(str);
}
alert(array)
javascript没有逆序环视,只能这样了