C# 如何返回字符串中重复字母的数量
我试图获取用户的输入,以便返回他们有多少重复字符 这就是我获得输入的方式C# 如何返回字符串中重复字母的数量,c#,C#,我试图获取用户的输入,以便返回他们有多少重复字符 这就是我获得输入的方式 Console.WriteLine("Input a word to reveal duplicate letters"); string input = Console.ReadLine(); 例如,代码应返回如下内容: 字符串“编程”中的重复字符列表 g:2 r:2 m:2 如何查找重复的字母并在字符串中计数?是的,您可以使用System.Linq GroupBy对字符串按字符值进行分组,然后过滤
Console.WriteLine("Input a word to reveal duplicate letters");
string input = Console.ReadLine();
例如,代码应返回如下内容:
字符串“编程”中的重复字符列表
g:2
r:2
m:2
如何查找重复的字母并在字符串中计数?是的,您可以使用System.Linq GroupBy对字符串按字符值进行分组,然后过滤生成的具有1个以上值的组,如下所示:
var word = "Hello World!";
var multipleChars = word.GroupBy(c => c).Where(group => group.Count() > 1);
foreach (var charGroup in multipleChars)
{
Console.WriteLine(charGroup .Key + " : " + charGroup .Count());
}
这将包括区分大小写以及排除非字母数字字符
var sample = Console.ReadLine();
var letterCounter = sample.Where(char.IsLetterOrDigit)
.GroupBy(char.ToLower)
.Select(counter => new { Letter = counter.Key, Counter = counter.Count() })
.Where(c=>c.Counter>1);
foreach (var counter in letterCounter){
Console.WriteLine(String.Format("{0} = {1}", counter.Letter,counter.Counter));
}
你需要尝试一下!它并没有那么复杂,定义了单步执行,我要告诉你们两件事,你们应该能够知道怎么做:1字符串实现IEnumerable。2您可以使用以下方法将IEnumerable拆分为同一个字符的组:[准确地说是2作为计数?或者只是一个普通的柱状图?这里的x是什么?您的意思是单词?@Grisgram是的,请注意toLower可能不适用于非西方字符,如turquish i。