【C#】验证一个字符串是否是纯数字正则表达式~

2025-03-06 21:46:42
推荐回答(2个)
回答1:

static void Main(string[] args)
{
string value = "A";

if (IsOnlyNumber(value))
{
Console.WriteLine(string.Format("'{0}'仅由纯数字构成。", value));
}
else if (IsOnlyWord(value))
{
Console.WriteLine(string.Format("'{0}'仅由字母构成。", value));
}
else if (IsNumberAndString(value))
{
Console.WriteLine(string.Format("'{0}'由数字和字母构成。", value));
}

Console.ReadKey();
}

private static bool IsOnlyNumber(string value)
{
Regex r = new Regex(@"^[0-9]+$");

return r.Match(value).Success;
}

public static bool IsNumberAndString(string value)
{
Regex r = new Regex(@"(\d+[a-zA-Z])|([a-zA-Z]\d+)");

return r.Match(value).Success;
}

public static bool IsOnlyWord(string value)
{
Regex r = new Regex(@"^[a-zA-Z]+$");

return r.Match(value).Success;
}

回答2:

(1)验证字符串string str 是否是纯数字 例:string str = “123465”
/^\d+$/
(2)验证字符串string str 是否是数字加字母 例:string str= “123abc” || string str = “ab12c”
/^[a-z]*\d*[a-z]+\d+[a-z]*\d*$/i || /^[a-z]*\d*\d+[a-z]+[a-z]*\d*$/i
(3)验证字符串string str 是否是数字加汉字 例:string str = “12张三34”
/^[\u4e00-\u9fa5]*\d*[\u4e00-\u9fa5]+\d+[\u4e00-\u9fa5]*\d*$/ ||
/^[\u4e00-\u9fa5]*\d*\d+[\u4e00-\u9fa5]+[\u4e00-\u9fa5]*\d*$/