c#怎么去除多余重复字母

怎么去除多余重复字母?

    static void Main(string[] args)
    {
        string str;
        char c;
        int num = 0;
        str = Console.ReadLine();
        for (int i = 0; i < str.Length; i++)
        {
            c = str[i];
           // Console.WriteLine(c);
            if ((int)c >= 'a' && (int)c <= 'z' || (int)c >= 'A' && (int)c <= 'Z')
            {
                { 
                Console.WriteLine("{0}", c);
                num++;
                }
            }
        }
        Console.Write("输入字符串中字母的个数:{0}",num);
        Console.ReadKey(); 
    }

基于new Bing 的回答:
要去除多余的重复字母,可以使用以下C#代码:

string input = "abbcccddddeeeee";
string output = new string(input.Distinct().ToArray());
Console.WriteLine(output);

这里使用了字符串的 Distinct() 方法,该方法返回一个新的字符串,其中包含输入字符串中不同的字符,而且只保留第一个出现的字符。然后使用 ToArray() 方法将结果转换为字符数组,再用 new string() 构造函数将其转换为一个新的字符串。在上述示例中,输出结果将是 "abcde",其中每个字符只出现一次,多余的重复字母已被删除。

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 这有个类似的问题, 你可以参考下: https://ask.csdn.net/questions/7526897
  • 这篇博客也不错, 你可以看下C#编写网游客户端连接游戏服务器
  • 除此之外, 这篇博客: C#如何给整型数组去重?如何排序?中的 数组排序 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:

    数组排序只需要使用Array.Sort()方法即可,默认是升序

     Array.Sort(newArr);//排序,升序
    

    若想降序排序,当然可以,只需要加一行代码就可以实现,代码如下:

    Array.Reverse(nums);//反转
    

    下面是一道水题,使用了数组去重和排序的方法

    明明的随机数

    使用C#实现:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    
    namespace DI1026sort
    {
        class Program
        {
            static void Main(string[] args)
            {
                int n = int.Parse(Console.ReadLine());
                var str = Console.ReadLine().Split(' ');
                int[] num = new int[n];
                for(var i = 0; i < n; i++)
                {
                    num[i] = Convert.ToInt32(str[i].ToString());
                }
                List<int> list = num.ToList();
                List<int> newList = list.Distinct().ToList();
                int[] newArr = newList.ToArray();
                Array.Sort(newArr);
                Console.WriteLine(newArr.Length);
                for(var i = 0; i < newArr.Length; i++)
                {
                    Console.Write("{0} ",newArr[i]);
                }
                //Console.ReadKey();
            }
        }
    }
    
  • 您还可以看一下 徐新帅老师的c#从入门到建设网站详解教程课程中的 网站后台新闻列表页实现开发小节, 巩固相关知识点

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^