请原谅垃圾标题,我不知道如何正确地说出来。我想知道如何使用这段代码:
int cnt = 0;
foreach (char c in test) {
if (c == '&') cnt++;
}
来自this question,而不是在'只是'的计数中加1 &
,为&
或@
或%
的点数添加1?
答案 0 :(得分:7)
您可以使用.Count
并使用Linq
var cnt = test.Count(c => c == '&' || c == '@' || c == '%');
答案 1 :(得分:4)
这很简单,只需添加更多条件:
int cnt = 0;
foreach (char c in test) {
if (c == '&' || c == '@' || c == '%') cnt++;
}
答案 2 :(得分:3)
您可以使用正则表达式:
cnt = Regex.Matches(test, "[&@%]").Count
答案 3 :(得分:1)
string pattern = "&@%";
int cnt = 0;
foreach (char c in test)
{
if (pattern.IndexOf(c) != -1) cnt++;
}