不用正则好点 <meta charset='utf-8'> <script> var s='1:一:啊:吧:才|2:二:的:额:嘎嘎嘎嘎|3:三:得到的:呃呃呃:通天塔|'; var id=2,name='二',t; var ar=s.split('|'); for(var i=0;i<ar.length;i++){ t=ar[i].split(':'); if(t[0]==id && t[1]==name) ar.splice(i,1); } alert(ar.join('|')); </script>
var s = '1:一:啊:吧:才|2:二:的:额:嘎嘎嘎嘎|3:三:得到的:呃呃呃:通天塔|2:二:速度:都是:速度是|'; var id = 2, name = '二', reg; reg = new RegExp(id + ':' + name + '(:[^:]*){3}\\|?', 'g'); alert(s.replace(reg, ''));
格式为 id:name:字符串1:字符串2:字符串3|id:name:字符串1:字符串2:字符串3|id:name:字符串1:字符串2:字符串3|其中|是分隔符,
比如 1:一:啊:吧:才|2:二:的:额:嘎嘎嘎嘎|3:三:得到的:呃呃呃:通天塔|
我现在想要的是,替换掉指定ID和name的字符串,比如上面这个字符串我指定 id=2,name=二 那么我替换得到的字符串就是 1:一:啊:吧:才|3:三:得到的:呃呃呃:通天塔|
<meta charset='utf-8'>
<script>
var s='1:一:啊:吧:才|2:二:的:额:嘎嘎嘎嘎|3:三:得到的:呃呃呃:通天塔|';
var id=2,name='二',t;
var ar=s.split('|');
for(var i=0;i<ar.length;i++){
t=ar[i].split(':');
if(t[0]==id && t[1]==name) ar.splice(i,1);
}
alert(ar.join('|'));
</script>
var s = '1:一:啊:吧:才|2:二:的:额:嘎嘎嘎嘎|3:三:得到的:呃呃呃:通天塔|2:二:速度:都是:速度是|';
var id = 2, name = '二', reg;
reg = new RegExp(id + ':' + name + '(:[^:]*){3}\\|?', 'g');
alert(s.replace(reg, ''));