c# - 将字符串与带有 IgnoreCase 的 Regex 或字符串的 ToLower 方法进行比较是否更快?

标签 c# regex

给定这样的字符串:

string s1 = "Abc";
string s2 = "ABC";

什么更快:

Regex.Match(s1, s2, RegexOptions.IgnoreCase)

s1.ToLower() == s2.ToLower()

如果它们相同或一个比另一个更快,那么什么时候使用一个比另一个更好?

最佳答案

可能第二种方法更快,但我会避免这两种方法。

更好的方法是使用 string.Equals 方法使用适当的 StringComparison 参数:

s1.Equals(s2, StringComparison.CurrentCultureIgnoreCase)

在线查看它:ideone

关于c# - 将字符串与带有 IgnoreCase 的 Regex 或字符串的 ToLower 方法进行比较是否更快?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10573143/

相关文章:

c# - 如何在 c# 请求后更改 json 格式?

c# - 程序无法在 Visual Studio 之外运行

c++ 正则表达式问题,需要信息

c# - 输入验证的正则表达式问题

PHP preg_split 结果不正确

java - 如何将 Android REGEX 与模式和匹配器类一起使用?

c# - 从字母转换为它们在字母表中的相对位置 (c#)

c# - 使用 C# 格式化字符串

javascript - 使正则表达式成为可重用的函数

c# - x => x + 1和x => x + = 1之间有区别吗?