例如:
string a = "88-87-9";
string b = "iu-98-oo-oip";
string c = "io-oik-oolk-iuju-olki";
现在想问的是,如何去判断出来c是出现-最多的一个,并且计算出来出现过几次-!
var list=new[a,b,c];
var maxstr=list.Max(m=>m.Count(s=>s=='-'));
var count=maxstr.Count(s=>s=='-');
那如果是这样的呢?
string a ="88-87-9,88-87-9-oi,88-87-9-ooik-oik";
遍历一轮,判断相等就计数。。
用split按照-分割,数组长度越长,-越多,-个数为数组长度-1
方法一:
int count; string a ="88-87-9,88-87-9-oi,88-87-9-ooik-oik"; foreach(char s in a) { if(s=="-") { count++; } }
方法二:
int count=str.Split('-').Length-1
方法三:
int count= str.Length - str.Replace("-","").Length;
加油
var array = new String[] { "88-87-9", "iu-98-oo-oip", "io-oik-oolk-iuju-olki", "88-87-9,88-87-9-oi,88-87-9-ooik-oik" }; var theone = array.Select(item => new { item, Count = item.Count(subitem => subitem == '-') }).OrderByDescending(m => m.Count).FirstOrDefault(); Console.WriteLine(theone);
我的意思是说怎么判断string s = "88-87-9,88-87-9-oi,88-87-9-ooik-oik"
怎么能判断出 s里面 ‘88-87-9-ooik-oik’这个里面包含的-是最多的!谢谢!
@西瓜凉了半个夏:
var str = "88-87-9,88-87-9-oi,88-87-9-ooik-oik"; var theone = str.Split(',').Select(item => new { item, Count = item.Count(subitem => subitem == '-') }).OrderByDescending(item => item.Count).FirstOrDefault(); Console.WriteLine(theone);
加油。。。