通用验证类Validate
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
?
namespace Utility.UI
{
???/// <summary>
???/// <Author>jilongliang</Author>
???/// <Date>2012/9/7</Date>
???/// <Email >jilongliang@sina.com</Email >
? ???/// <Description>验证类</Description>
???/// </summary>
???public classValidateHelper
???{
???????private staticRegex RegNumber= new Regex("^[0-9]+$");//数字字符串
???????private staticRegex RegNumberSign= new Regex("^[+-]?[0-9]+$");//数字字符串
???????private staticRegex RegDecimal= new Regex("^[0-9]+[.]?[0-9]+$");//浮点数
???????private staticRegex RegDecimalSign= new Regex("^[+-]?[0-9]+[.]?[0-9]+$"); //等价于^[+-]?\d+[.]?\d+$
???????private staticRegex RegEmail= new Regex("^[\\w-]+@[\\w-]+\\.(com|net|org|edu|mil|tv|biz|info)$");//w 英文字母或数字的字符串,和 [a-zA-Z0-9] 语法一样
???????private staticRegex RegCHZN= new Regex("[\u4e00-\u9fa5]");//中文
???????private staticRegex RegQQ= new Regex("[1-9][0-9]{4,}");//匹配腾讯QQ号
???????private staticRegex RegTel= new Regex("d{3}-d{8}|d{4}-d{7}");//Tel匹配国内电话号码
???????private staticRegex RegURL= new Regex("[a-zA-z]+://[^s]*");//URL
???????private staticRegex RegZipCode= new Regex("[1-9]d{5}(?!d)");//CN 邮政编码
???????private staticRegex RegIDCard= new Regex("d{15}|d{18}");//匹配身份证:d{15}|d{18}
???????private staticRegex RegHTML= new Regex("<(S*?)[^>]*>.*?|<.*? />");//匹配HTML标记的正则表达式:<(S*?)[^>]*>.*?|<.*? />
???????private staticRegex RegPassWord= new Regex("^[a-zA-Z]w{5,17}$"); //验证用户密码:“^[a-zA-Z]w{5,17}$”正确格式为:以字母开头,长度在6-18之间
???????private staticRegex Reg26A_Z= new Regex("^[A-Za-z]+$");//只能输入由26个英文字母组成的字符串:“^[A-Za-z]+$”
???????private staticRegex Reg26Large_A_Z= new Regex("^[A-Z]+$");//只能输入由26个大写英文字母组成的字符串:“^[A-Z]+$”
???????private staticRegex Reg26Small_A_Z= new Regex("^[a-z]+$");//只能输入由26个小写英文字母组成的字符串:“^[a-z]+$”
???????private staticRegex Reg0_9_A_Z= new Regex("^[A-Za-z0-9]+$");//只能输入由数字和26个英文字母组成的字符串:“^[A-Za-z0-9]+$”
???????private staticRegex Reg0_9_A_Z_= new Regex("^w+$");//只能输入由数字、26个英文字母或者下划线组成的字符串:“^w+$”
???????
???????/// <summary>
???????/// 无参数构造方法
???????/// </summary>
???????public ValidateHelper()
???????{
???????}
?
???????/// <summary>
???????/// 是否数字字符串
???????/// </summary>
???????/// <param name="inputData">输入字符串</param>
???????/// <returns></returns>
???????public staticbool IsNumber(string inputData)
???????{
??????????? Matchm = RegNumber.Match(inputData);
??????????? returnm.Success;
???????}
???????/// <summary>
???????/// 是否数字字符串 可带正负号
???????/// </summary>
???????/// <param name="inputData">输入字符串</param>
???????/// <returns></returns>
???????public staticbool IsNumberSign(string inputData)
???????{
??????????? Matchm = RegNumberSign.Match(inputData);
??????????? returnm.Success;
???????}
???????/// <summary>
???????/// 是否是浮点数
???????/// </summary>
???????/// <param name="inputData">输入字符串</param>
???????/// <returns></returns>
???????public staticbool IsDecimal(string inputData)
???????{
??????????? Matchm = RegDecimal.Match(inputData);
??????????? returnm.Success;
???????}
???????/// <summary>
???????/// 是否是浮点数 可带正负号
???????/// </summary>
???????/// <param name="inputData">输入字符串</param>
???????/// <returns></returns>
???????public staticbool IsDecimalSign(string inputData)
???????{
??????????? Matchm = RegDecimalSign.Match(inputData);
??????????? returnm.Success;
???????}
?
??????? #region 中文检测
?
???????/// <summary>
???????/// 检测是否有中文字符
???????/// </summary>
???????/// <param name="inputData"></param>
???????/// <returns></returns>
???????public staticbool IsHasCHZN(string inputData)
???????{
??????????? Matchm = RegCHZN.Match(inputData);
??????????? returnm.Success;
???????}
?
??????? #endregion
?
??????? #region 邮件地址
???????/// <summary>
???????/// 是否是浮点数 可带正负号
???????/// </summary>
???????/// <param name="inputData">输入字符串</param>
???????/// <returns></returns>
???????public staticbool IsEmail(string inputData)
???????{
??????????? Matchm = RegEmail.Match(inputData);
??????????? returnm.Success;
???????}
??????? #endregion
?
???????/// <summary>
???????/// 验证是否合法的URL
???????/// </summary>
???????/// <param name="InputStr"></param>
???????/// <returns></returns>
???????public staticbool IsURL(string InputStr)
???????{
??????????? Matchm = RegURL.Match(InputStr);
??????????? returnm.Success;
???????}
???????/// <summary>
???????/// 验证电话号码是否合法
???????/// </summary>
???????/// <param name="InputStr"></param>
???????/// <returns></returns>
???????public staticbool IsTelNumber(string InputStr)
???????{
??????????? Matchm = RegTel.Match(InputStr);
??????????? returnm.Success;
???????}
???????/// <summary>
???????/// 验证邮政编码
???????/// </summary>
???????/// <param name="InputStr"></param>
???????/// <returns></returns>
???????public staticbool IsZipCode(string InputStr)
???????{
??????????? Matchm = RegZipCode.Match(InputStr);
??????????? returnm.Success;
???????}
???????/// <summary>
???????/// 验证QQ号
???????/// </summary>
???????/// <param name="InputStr"></param>
???????/// <returns></returns>
???????public staticbool IsQQ(string InputStr)
???????{
??????????? Matchm = RegQQ.Match(InputStr);
??????????? returnm.Success;
???????}
???????/// <summary>
???????/// 验证身份证
???????/// </summary>
???????/// <param name="InputStr"></param>
???????/// <returns></returns>
???????public staticbool IsIDCard(string InputStr)
???????{
??????????? Matchm = RegIDCard.Match(InputStr);
??????????? returnm.Success;
???????}
???????/// <summary>
???????/// 验证用户密码
???????/// </summary>
???????/// <param name="InputStr"></param>
???????/// <returns></returns>
???????public staticbool IsPassWord(string InputStr)
???????{
??????????? Matchm = RegPassWord.Match(InputStr);
??????????? returnm.Success;
???????}
???????/// <summary>
???????/// 验证只能输入由26个英文字母组成的字符串
???????/// </summary>
???????/// <param name="InputStr"></param>
???????/// <returns></returns>
???????public staticbool Is26A_Z(string InputStr)
???????{
??????????? Matchm = Reg26A_Z.Match(InputStr);
??????????? returnm.Success;
???????}
???????/// <summary>
???????/// 只能输入由26个大写英文字母组成的字符串
???????/// </summary>
???????/// <param name="InputStr"></param>
???????/// <returns></returns>
???????public staticbool Is26Large_A_Z(string InputStr)
???????{
??????????? Matchm = Reg26Large_A_Z.Match(InputStr);
??????????? returnm.Success;
???????}
???????/// <summary>
???????/// 只能输入由26个小写英文字母组成的字符串
???????/// </summary>
???????/// <param name="InputStr"></param>
???????/// <returns></returns>
???????public staticbool Is26Small_A_Z(string InputStr)
???????{
??????????? Matchm = Reg26Small_A_Z.Match(InputStr);
??????????? returnm.Success;
???????}
???????/// <summary>
???????/// 只能输入由数字和26个英文字母组成的字符串
???????/// </summary>
???????/// <param name="InputStr"></param>
???????/// <returns></returns>
???????public staticbool Is0_9_AZ_Str(string InputStr)
???????{
??????????? Matchm = Reg0_9_A_Z.Match(InputStr);
??????????? returnm.Success;
???????}
???????/// <summary>
???????/// 只能输入由数字和26个英文字母组成的字符串和下划线
???????/// </summary>
???????/// <param name="InputStr"></param>
???????/// <returns></returns>
???????public staticbool Is0_9_A_Z_Str(string InputStr)
???????{
??????????? Matchm = Reg0_9_A_Z_.Match(InputStr);
??????????? returnm.Success;
???????}
?
?
???}
?
}
?