C#中统计一个字符串中某个字符出现的次数的最简单方法是什么?
比如字符串是这样的:
var text = "http://www.cnblogs.com;http://q.cnblogs.com;http://home.cnblogs.com;http://job.cnblogs.com";
统计一下其中"://"出现的次数。
哪个方法耗时最少,园豆就归他
int count=(text.Length-text.Replace("://","").Lenght)/"://".Lenght;
这个思路有创意
@dudu: 再简化一下:
int count=text.Length-text.Replace("://","//").Lenght;
一个替换,一个减运算
经测试这个执行速度超正则表达式
@dudu:
第一个还是第二个 ? 如果是第二个理论上更快,因为少了一个除法运算。
@江湖再见: 测试下来第1个更快一些,第2个速度不是很稳定
@江湖再见: 赞!
@江湖再见: 这个方法不错。赞一个。
@imfunny:
dudu说效率不稳定。
@江湖再见: 这种不稳定可以忽略不计
@江湖再见: 定义常量,估计更高。。。总的来说很不错了,刚还真没想到这个特性,思考了三十秒才发现的确很赞。
"..dasdasd...dasda..dadasd".Where(x => x == '.').Count()