string S = "123,12345,14564789,123,456789,456789,454564645,";
var result = string.Join(",", S.TrimEnd(',').Split(',').Distinct());
Console.WriteLine(result);
var result = string.Join(",", S.TrimEnd(',').Split(',').Distinct());
Console.WriteLine(result);
然后split以逗号作为参数把该字符串切成数组。
string[] array = s.Split(",");
然后进行一个数组排序
Array.Sort(array);
再用循环把不重复的拿出
List<String> list = new List<String>();
for(int i=0;i<array.length;i++){
if(list.Count==0||!array[i].equals(list[list.Count-1])){
list.add(array[i]);
}
}
最把list数据拿出来还原成string型public String strDistinct(Stirng str){
if(str.LastIndexOf(",")==str.length-1){str = str.Substring(0,str.LastIndexOf(","));}
string[] array = s.Split(",");
Array.Sort(array);
List<String> list = new List<String>();
for(int i=0;i<array.length;i++){
if(list.Count==0||!array[i].equals(list[list.Count-1])){
list.add(array[i]);
}
}
str="";
for(int i=0;i<list.Count;i++){
if(i!=0){str+=",";}
str+=list[i];
}
return str;
}
using System.Linq;不过版主写的String.Join 方法参数要4.0以上才能使用3.5的要ToArray一下
var result = string.Join(",", S.TrimEnd(',').Split(',').Distinct().ToArray());
var query = (from x in S.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries)
where x.Trim() != string.Empty
select x).Distinct();
var result = string.Join(",", query.ToArray());