检查字符串是否包含至少两个alpha字符

时间:2016-07-06 17:06:27

标签: c# c#-2.0

我需要检查字符串是否至少包含两个字母字符,例如a1763rab1244
我以为我会使用类似的东西:

myString = "a123B";  
myString.Any(char.IsDigit).Count();

但我使用.net 2.0,因此此方法Any()不存在。

有没有相应的东西?

4 个答案:

答案 0 :(得分:4)

不知道alpha或什么不知道,但你可以计算没有Linq的数字是多少字符,如下所示:

string str = "a123B";
int digits = 0;
foreach (char c in str)
    if (char.IsDigit(c))
        digits++;
print(digits); // 3

答案 1 :(得分:2)

您可以创建一个简单的辅助函数,它循环遍历您的字符串,并采用最低阈值来满足。它返回布尔值以匹配.Any()

的输出行为类型
public bool ContainsMinAlphaCharacters(string input, int threshold)
{
    var count = 0;
    foreach (var character in input)
    {
        if (char.IsDigit(character)) count++;
        if (count >= threshold) 
        {
            return true;
        }
    }

    return false;
}

答案 2 :(得分:0)

使用regexpressions

两个字母:Regex.IsMatch(myString, "[A-Za-z].*?[A-Za-z]");

两位数:Regex.IsMatch(myString, "\d.*?\d");

答案 3 :(得分:0)

不是真的。您将不得不循环遍历字符串并检查每个字符是否为数字以获得计数。