C# 实现字符串去重

方法一 注:需要.net 3.5框架的支持

string s = "101,102,103,104,105,101,102,103,104,105,106,107,101,108";
s = string.Join(",", s.Split(',').Distinct().ToArray());

方法二

复制代码
class Program
    {
        static void Main(string[] args)
        {
            string result="";
            string str = "101,102,103,104,105,101,102,103,104,105,106,107,101,108";
            ArrayList list = array(str);
            for (int i = 0; i < list.Count;i++)
            {
                if (i == list.Count - 1)
                {
                    result += list[i];
                }
                else
                {
                    result += list[i] + ",";
                }
            }
            Console.WriteLine(result);

            Console.ReadKey();
        }

        static ArrayList array(string str)
        {
            ArrayList aimArr = new ArrayList();
            ArrayList strArr = new ArrayList();
            string [] strs=str.Split(',');
            foreach (string s in strs)
            {
                strArr.Add(s);
            }
            for (int i = 0; i < strs.Length; i++)
            {
                if (!aimArr.Contains(strs[i]))
                {
                    aimArr.Add(strs[i]);
                }
            }
            return aimArr;
        }
    }

  //101,102,103,104,105,106,107,108
复制代码

方法三:使用正则

  string input = "101,102,103,104,105,101,102,103,104,105,106,107,101,108";
            input = Regex.Replace(input + ",", @"(?:([^,]+,))(?=.*?\1)", "");
            Console.WriteLine(input.Substring(0,input.Length-1));

 

posted @   Elite_Y  阅读(2412)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示