现在有一串字符,比方说是str2="123",我要看str2在str1中有没有,有的话,把它去掉,没有的话把它

问题:用","号分开的一串字符比如:str1='123,1234,1,3,4,5'
我现在有一串字符,比方说是str2="123",
我要看str2在str1中有没有,有的话,把它去掉,没有的话把它加上
操作后结果是:"1234,1,3,4,5"
如果str2="1";
操作后的结果是:123,1234,3,4,5
如果str2="9"
操作后的结果是:'123,1234,1,3,4,5,9'
thanks
---------------------------------------------------------------

 1<script language="javascript">   
 2function replaceStr(sStr,rStr)   
 3{   
 4var patternN = new RegExp(rStr+",","gi");   
 5var patternL = new RegExp(","+rStr,"gi");   
 6if(sStr.indexOf(rStr) == -1)   
 7sStr = sStr + "," + rStr;   
 8else   
 9{   
10if(sStr.indexOf(rStr) == sStr.length - 1)   
11sStr = sStr.replace(patternL,"");   
12else   
13sStr = sStr.replace(patternN,"");   
14}   
15return sStr;   
16}   
17alert(replaceStr('123,1234,1,3,4,5','5'));   
18alert(replaceStr('123,1234,1,3,4,5','222'));   
19</script>

---------------------------------------------------------------

function replaceStr(str1, str2) //作成函数的方式
{
var re = new RegExp(str2 +"(, ¦$)", "gi"); //
if(str1.match(re)) str1 = str1.replace(re, "");
else str1 += ","+ str2; return str1;
}

alert(replaceStr('123,1234,1,3,4,5','5'));
alert(replaceStr('123,1234,1,3,4,5','222'));
---------------------------------------------------------------

function test(s){
var flag=false;
var str="123,1234,1,3,4,5";
str1=str.split(",");
str2="";
for(i=0;i<str1.length;i++){
if(str1[i]!=s) {
str2=str2+str1[i]+",";
}
else
{
flag=true;
}
}
if(!flag)
{ str2=str2 + s ; }
else
{ str2=str2.substring(0,str2.length-1);}
alert(str2);
}

Published At
Categories with Web编程
Tagged with
comments powered by Disqus