嘿,我想知道如何把它变成for循环,所以我不必为字母表中的每个字母复制26次:
count[1] = str.Split('A').Length - 1;
Console.WriteLine("A comes up x " + count[1]);
count是一个空白整数数组,它取26个值,表示字母表中字母的字母数字的字符串,存储在一个名为letters的字符串数组中
答案 0 :(得分:4)
我会使用def self.search(query)
where("description like ?", "%#{query}%")
end
函数,而不是拆分和创建新数组。然后,您可以循环遍历每个字符,或循环现有数组。
Count()
答案 1 :(得分:0)
这里有一个:
static void Main(string[] args)
{
var letters = "abcdefghijklmnopqrstuvwxyz";
var str = "the quick brown fox jumps over the lazy dog";
for (int i = 0; i < letters.Length; i++)
Console.WriteLine("{0} comes up {1} time(s)", letters[i], str.ToLower().Split(letters[i]).Length - 1);
Console.Read();
}
答案 2 :(得分:0)
您可以使用数组存储每个字符的计数。拆分将是一项昂贵的操作
var str = "THISISJUSTATEST";
var array = new int[26];
foreach(var character in str.ToCharArray()){
if (character >= 'A' && character <= 'Z'){
var index = character - 'A';
array[index]++;
}
}
for (int i = 0; i < 26; i++) {
var c = i +'A';
Console.WriteLine("{0} comes {1} time(s)", (char)c, array[i]);
}