c# - 在 C# 中检测字符串中的重复单词时遇到问题?

标签 c# string linq duplicates string-comparison

我想检测并删除字符串中的重复项。

我的代码在这里:

        string Tests = "Hi,World,Me,Hi,You";
        string[] Tests_Array = Tests.Split(',');
        Regex FindDup = new Regex(@"(.+)\1", RegexOptions.IgnoreCase);
        string t2 = "";
        foreach (string test in Tests_Array)
        {
            MatchCollection allMatches = FindDup.Matches(test);

            foreach (Match item in allMatches)
            {
                t2 = FindDup.Replace(test, string.Empty);
                textBox1.Text += string.Format(@"Final: ""{0}""", t2) + "\n";
            }
        }

但它不起作用。

不知道哪里出了问题?

感谢您的帮助。

最佳答案

你可以使用 LINQ

string Tests = "Hi,World,Me,Hi,You";
string[] Tests_Array = Tests.Split(',');
string result = String.Join(",", Tests_Array.Distinct());

关于c# - 在 C# 中检测字符串中的重复单词时遇到问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23827221/

相关文章:

c# - 以通用方式测试匿名类型的字段值

c# - 如何在 C# 中创建类列表以在循环中迭代

javascript - 防止在 Asp.Net Core ViewComponents 中加载多个 JavaScript 脚本

c# - 将 .exe c++ 文件(创建窗口)转换为 .dll c++ 文件并在 C# 中使用该 .dll 文件

c# - 如何在记录中找到一组整数(N),其中包含 6 个整数

java - 将正则表达式中的字符串拆分为 - 作为一个单词

c++ - 提取特定字符串之前的字符串

c# - Entity Framework -使用存储过程急于加载对象图

java - 我如何使多个replace() java

c# - 如何比较两个无序序列(列表和数组)是否相等?