string str = "wcd,aaa,wcd"; string newstr = ""; var p = (from n in str.Split(',') select n).Distinct(); foreach (var i in p) { newstr += i + ","; } //newstr为想要的
List<String> list = new List<String>(); String s = "wcd,aaa,wcd"; String [] ss = s.Split(new char[]{','}); for(int i=0;i<ss.length;i++) { if(!list.Contains(ss[i])) {list.Add(ss[i]);} }
然后遍歷string[],第一次出現的就插到ArrayList中去..= =#這個方法太差...
string[] list = str.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries);结果得到一个list数组里面就是wcd aaa wcd
string str = "wcd,aaa,wcd";
string newstr = "";
var p = (from n in str.Split(',')
select n).Distinct();
foreach (var i in p)
{
newstr += i + ",";
} //newstr为想要的
String s = "wcd,aaa,wcd";
String [] ss = s.Split(new char[]{','});
for(int i=0;i<ss.length;i++)
{
if(!list.Contains(ss[i]))
{list.Add(ss[i]);}
}
for(int i=0 ; i<list.length; i++)
{
if(list[i]==list[i+1])
{
list.move(list[i])
}
}
大概就是这个思路,最后的数组是没有相同的,最后再循环把数组里的元素加起来,注意这里比较的时候可能数组越界
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GB2312" />
<title>求</title>
</head>
<script type="text/javascript">
/*
//Regex Example in JavaScript
// Rainsome Studio
// [email protected]
// 2009-05-15 in Shanghai
*/
<!--//
//
window.onload=fun1();
function fun1()
{
var shift='<br />';
var str='aaa,wcd,ddaaa,wcd,aaa,dd,wcd,dd';
document.write('原字符串 : ' + str + shift);
var objRegex=/([ ]+|,|^)([a-z0-9]+(?=,))([, ].+)?([, ])(\2)/ig;
var strResult=str;
do{
strResult=strResult.replace(objRegex,'$1$2$3');
}while(objRegex.test(strResult)==true);
document.write('输出结果 : '+strResult+shift);
}
//-->
</script>
<body>
</body>
</html>
结果:<div>
原字符串 : aaa,wcd,ddaaa,wcd,aaa,dd,wcd,dd
<br />
输出结果 : aaa,wcd,ddaaa,dd
</div>
var不是js赋值语法吗?
c#没java方便,string方法里只能定位到某个字符
如果能定位索引就比较好解决了