Đối với những người bạn không muốn đi cùng Regex và đang ở trên .NET 2.0 Framework (AKA không LINQ):
Chỉ Letters:
public static bool IsAllLetters(string s)
{
foreach (char c in s)
{
if (!Char.IsLetter(c))
return false;
}
return true;
}
Chỉ số:
public static bool IsAllDigits(string s)
{
foreach (char c in s)
{
if (!Char.IsDigit(c))
return false;
}
return true;
}
Chỉ số hoặc chữ:
public static bool IsAllLettersOrDigits(string s)
{
foreach (char c in s)
{
if (!Char.IsLetterOrDigit(c))
return false;
}
return true;
}
.210
Chỉ số hoặc chữ hoặc dấu gạch dưới:
public static bool IsAllLettersOrDigitsOrUnderscores(string s)
{
foreach (char c in s)
{
if (!Char.IsLetterOrDigit(c) && c != '_')
return false;
}
return true;
}
Điều này giả định bảng chữ cái Latinh, nơi Char.IsLetter cho phép bảng chữ cái không phải latin. –
Regex.IsMatch (đầu vào, "^ [a-z0-9] + $", RegexOptions.IgnoreCase); –
@TomFobear: đây là chậm hơn rõ ràng chỉ định [a-zA-Z] –