日期:2014-05-16  浏览次数:20410 次

求一正则表达式写法
某字条串多次出现 " < <XXX> > "子串,其中XXX的内容和长度都是可变的,请问怎样用一正则表达式把所有xxx都提取出来?

------解决方案--------------------
<script>
var s = "asd < <xxx> > 43535434 < <kkkkkkk> > dsdfsdfds < <jjjjj> > ds ";
var arr = s.match(/(?! < <)([^ < <> > ]+?)(?=> > )/ig);
for(var i=0;i <arr.length;i++){
alert(arr[i]);
}
</script>
------解决方案--------------------
楼上的不太完美哦。

比如(“”内的才是所提取的内容,包括“”):

<script>
var s = "asd> > < <“xxx”> > 43535434 < <“ <kkkkkkk”> > dsdfsdfds < <jjjjj> > ds ";
var arr = s.match(/(?! < <)([^ < <> > ]+?)(?=> > )/ig);
for(var i=0;i <arr.length;i++){
alert(arr[i]);
}
</script>
------解决方案--------------------
<script>
var s = "asd < <xx <x> > 43535434 < <kk> kkkkk> > dsdfsdfds < <jjjjj> > ds ";
var re=/ < <([\s\S]+?)> > /ig;
var arr = s.match(re);
for(var i=0;i <arr.length;i++){
alert(arr[i].replace(re, "$1 "));
}
</script>