c# - 任何人都知道如何进行 List<string> 不区分大小写的比较

标签 c# asp.net

假设我有一个名字列表

var names = new List<string>{"Tom", "Dick", "Harry"};

现在假设我要搜索 Tom。

names.Contains("Tom");

没问题,但我想用不同的外壳说“tOM”。

谁能告诉我如何在不创建另一个类的情况下做到这一点?

我有一个解决方案,我有一个继承自 IEqualityComparer 的 Comparer 类。

谢谢!

最佳答案

使用 Enumerable.Contains 的重载它需要一个 IEqualityComparer,并传入 StringComparer.CurrentCultureIgnoreCaseStringComparer.InvariantCultureIgnoreCase .

names.Contains("tOm", StringComparer.CurrentCultureIgnoreCase);

关于c# - 任何人都知道如何进行 List<string> 不区分大小写的比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3544399/

相关文章:

c# - 使用 Visual Studio Code 在 C# 中可用的 'using/import' s 的智能感知

c# - 用于更新表存储实体的 Azure 函数 - 未找到 CloudTable.Execute

c# - 给定一个字符串中的网站 HTML,如何提取标签元素?

c# - 如何使用 Razor 通过循环正确生成 Bootstrap 网格?

c# - 为什么我会得到这个 XML block 的 org.xml.sax.SAXException?

c# - 如何从 Asp.net Mvc-3 发送电子邮件?

c# - 函数将十六进制字符串转换为 BitArray C#

C# lambda 引用输出

c# - 为什么在着色器中顺序很重要?

c# - spamassassin 检查分数 C# 代码