using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Text.RegularExpressions; namespace WcfControlMonitorLib { /// <summary> /// RegexValid 正则表达式匹配类 /// </summary> public static class CRegexValid { #region ------匹配规则字符串 /// <summary> /// 验证Email格式 /// </summary> static public string Email = @"^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$"; /// <summary> /// 验证出生日期 /// </summary> static public string Brith = @"^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$"; /// <summary> /// 验证URL /// </summary> static public string URL = @"^\s*(\d{4})-(\d{2})-(\d{2})\s*$"; /// <summary> /// 验证用户密码 /// </summary> static public string Pwd = @"^[a-zA-Z]\w{5,17}$"; /// <summary> /// 只能输入汉字 /// </summary> static public string Chinese = @"^[\u4e00-\u9fa5]{0,}$"; /// <summary> /// 验证是否为整数 /// </summary> static public string Integer = @"^[0-9]*$"; /// <summary> /// 只能输入非零的正整数 /// </summary> static public string Positive = @"^\+?[1-9][0-9]*$"; /// <summary> /// 只能输入由 26 个英文字母组成的字符串 /// </summary> static public string LetterStr = @"^[A-Za-z]+$"; /// <summary> /// 只能输入由数字和 26 个英文字母组成的字符串 /// </summary> static public string NumLetterStr = @"^[A-Za-z0-9]+$"; #endregion #region --------网络应用 /// <summary> /// 验证Email格式 /// </summary> /// <param name="strEmail">验证字符串</param> /// <returns>合法返回true,否则返回false</returns> public static bool IsValidEmai(string strEmail) { return Regex.IsMatch(strEmail, Email); } /// <summary> /// 验证出生日期 /// </summary> /// <param name="strBirth">验证字符串</param> /// <returns>合法返回true,否则返回false</returns> public static bool IsValidBirth(string strBirth) { return Regex.IsMatch(strBirth, Brith); } /// <summary> /// 验证URL /// </summary> /// <param name="strURL">验证字符串</param> /// <returns>合法返回true,否则返回false</returns> public static bool IsValidURL(string strURL) { return Regex.IsMatch(strURL,URL); } /// <summary> /// 验证用户密码,以字母开头,长度在6~18之间,只能包含字符、数字和下划线 /// </summary> /// <param name="str1">验证字符串</param> /// <returns>合法返回true,否则返回false</returns> public static bool IsValidPassword(string str1) { return Regex.IsMatch(str1, Pwd); } /// <summary> /// 只能输入汉字 /// </summary> /// <param name="str1">验证字符串</param> /// <returns>合法返回true,否则返回false</returns> public static bool IsValidChinese(string str1) { return Regex.IsMatch(str1, Chinese); } #endregion #region -----数字验证 /// <summary> /// 验证是否为整数 /// </summary> /// <param name="str1">验证字符串</param> /// <returns>合法返回true,否则返回false</returns> public static bool IsValidInteger(string str1) { return Regex.IsMatch(str1,Integer ); } /// <summary> /// 只能输入非零的正整数 /// </summary> /// <param name="str1">验证字符串</param> /// <returns>合法返回true,否则返回false</returns> public static bool IsValidPositive(string str1) { return Regex.IsMatch(str1, Positive); } #endregion #region -------字符串验证 /// <summary> /// 只能输入由 26 个英文字母组成的字符串 /// </summary> /// <param name="str1">验证字符串</param> /// <returns>合法返回true,否则返回false</returns> public static bool IsValidLetterStr(string str1) { return Regex.IsMatch(str1, LetterStr); } /// <summary> /// 只能输入由数字和 26 个英文字母组成的字符串 /// </summary> /// <param name="str1">验证字符串</param> /// <returns>合法返回true,否则返回false</returns> public static bool IsValidNumLetterStr(string str1) { return Regex.IsMatch(str1, NumLetterStr); } #endregion } }