1.
var s = "[content=\"Tech\"]这是内容1[/content]这儿有一些乱七八遭的东东[content=\"Sales\"]这是内容2[/content]";
取出:Tech,Sales,这是内容1,这是内容2
要求:
1.使用正则
2.最好返回值是一个二维数组:如:a[0][0] = 'Tech';a[0][1] = 'Sales';
3.时间15分钟
Code
<script type="text/javascript">
var s = "[content=\"Tech\"]这是内容1[/content]这儿有一些乱七八遭的东东[content=\"Sales\"]这是内容2[/content]";
var t = s.match(/\[content[^\]]+].+?\[\/content]/ig);
//var x = s.match(/\[content[^\]]+\].+?\[\/content\]/gi);
alert(t);
//alert(x);
//[content=\"Tech\"]
alert(/\[content=\"[^\"]+\"]/.exec(t[0]));
//[content=\"Tech\"],Tech
alert(/\[content=\"([^\"]+)\"]/.exec(t[0]));
//Tech
alert(/\[content="([^"]+)"]/.exec(t[i])[1]);
var r = [];
for (var i = 0; i < t.length; i ++) {
r.push([/\[content="([^"]+)"]/.exec(t[i])[1],/\[content[^\]]+](.+?)\[\/content]/.exec(t[i])[1]]);
}
alert(r);
</script>
方法二:
Code
<script type="text/javascript">
var s = "[content=\"Tech\"]这是内容1[/content]这儿有一些乱七八遭的东东[content=\"Sales\"]这是内容2[/content]";
alert(s.match(/(([^"]+)(?="]))|([^\[\]]+(?=\[\/))/g));
</script>