Jos*_*nig 5 c# validation char
也许我错过了一些明显的东西,但有没有更简单的方法来检查一个字符是否是一个基本的拉丁字母(az),而不是转换为字符串并使用正则表达式?:例如:
public static bool IsBasicLetter(Char c) {
return Regex.IsMatch(c.ToString(), "[a-z]", RegexOptions.IgnoreCase);
}
Run Code Online (Sandbox Code Playgroud)
Char.IsLetter匹配来自许多字母表的数百个字母字符.我可以直接检查代码点,但这感觉很粗略:
public static bool IsBasicLetter(Char c) {
int cInt = c;
return !(cInt < 65 || cInt > 122 || (cInt > 90 & cInt < 97));
}
Run Code Online (Sandbox Code Playgroud)
Jon*_*eet 15
如果你使用字符文字,你的第二段代码看起来好多了:
public static bool IsBasicLetter(char c) {
return (c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z');
}
Run Code Online (Sandbox Code Playgroud)