C# - 哪个更快:String.Contains()或Regex.isMatch()?

eug*_*neK 4 .net c# asp.net

可能重复:
Regex.IsMatch vs string.Contains

哪个更快,更可取,为什么?

两者之间的机制有何不同?

我需要从UserAgent中搜索一些值,大多数值都可以在没有通配符的情况下使用(例如,如果我想抓住我搜索的手机iPhone而不是*iPhone*通配符).

Ric*_*ard 13

什么是更快

尝试测量.但这是一个错误的问题,见下文.

最好

如果我想匹配一个固定的字符串String.Contains就是我需要的.如果我需要模式匹配,那么String.Contains就没用了.

比较这些的表现是无关紧要的,他们做了完全不同的事情.首先使用正确的工具,然后如果您的性能有问题,请使用性能分析来识别要查看的代码的热门部分.