逐个判断ASCII值
string str = "哈哈123gf";
char[] chars = str.ToCharArray();
foreach (char chr in chars)
{
// 表示大写字母 A(65) - Z(90)
if (chr > 64 && chr < 91)
Response.Write("有数字或字母和下划线");
// 表示小写字母 a(97) - z(122)
if (chr > 96 && chr < 123)
Response.Write("有数字或字母和下划线");
// 表示数字 0(48) - 9(57)
if (chr > 47 && chr < 58)
Response.Write("有数字或字母和下划线");
// 表示下划线(95)
if (chr == 95)
Response.Write("有数字或字母和下划线");
}