C# WinFrom 編寫正則表達式驗證類
public class ValidationRegex
{
/// <summary>
/// 正則表達式字符串
/// </summary>
public static string pattern ;
/// <summary>
/// 公共方法
/// </summary>
/// <param name="pattern">正則表達式</param>
/// <param name="validteString">待驗證字符串</param>
/// <returns>Bool</returns>
private static bool PublicMethod(string pattern, string validteString)
{
Regex reg = new Regex(pattern);
Match m = reg.Match(validteString);
return m.Success;
}
/// <summary>
/// 驗證正整數
/// </summary>
/// <param name="validteString">待驗證字符串</param>
/// <returns>bool</returns>
public static bool ValidteData(string validteString)
{
pattern = "^[+]?\\d+$";
return PublicMethod(pattern,validteString);
}
/// <summary>
/// 驗證正負整數
/// </summary>
/// <param name="validteString">待驗證字符串</param>
/// <returns>bool</returns>
public static bool ValidatePlusMinus(string validteString)
{
pattern = "^([-+]?\\d+)(\\.\\d+)?$";
return PublicMethod(pattern, validteString);
}
/// <summary>
/// 驗證字母和數字
/// </summary>
/// <param name="validteString">待驗證字符串</param>
/// <returns>bool</returns>
public static bool VadidateDataLetter(string validteString)
{
pattern = "^[a-zA-Z0-9]+$";
return PublicMethod(pattern, validteString);
}
/// <summary>
/// 驗證中文字符
/// </summary>
/// <param name="validteString">待驗證字符串</param>
/// <returns>bool</returns>
public static bool ValidateChineseChar(string validteString)
{
pattern = "^[\u4e00-\u9fa5]+$";
return PublicMethod(pattern, validteString);
}
/// <summary>
/// 驗證時間-【H:mm:ss】
/// </summary>
/// <param name="validteString">待驗證字符串</param>
/// <returns>bool</returns>
public static bool ValidateTime(string validteString)
{
pattern = "^[0-9]{1,2}:[0-9]{2}(:[0-9]{2})?$";
return PublicMethod(pattern, validteString);
}
/// <summary>
/// 驗證固定電話
/// </summary>
/// <param name="validteString">待驗證字符串</param>
/// <returns>bool</returns>
public static bool ValidateTel(string validteString)
{
pattern = "^([0-9]{3,4}-)?[0-9]{7,8}$";
return PublicMethod(pattern, validteString);
}
/// <summary>
/// 驗證手機號碼
/// </summary>
/// <param name="validteString">待驗證字符串</param>
/// <returns>bool</returns>
public static bool ValidatePhone(string validteString)
{
pattern = "^(13|15|18)[0-9]{9}$";
return PublicMethod(pattern, validteString);
}
/// <summary>
/// 驗證郵箱
/// </summary>
/// <param name="validteString">待驗證字符串</param>
/// <returns>bool</returns>
public static bool ValidateEmail(string validteString)
{
pattern = "^\\w+([+-.]\\w+)*@\\w+([-.]\\w+)*$";
return PublicMethod(pattern, validteString);
}
/// <summary>
/// 驗證郵編
/// </summary>
/// <param name="validteString">待驗證字符串</param>
/// <returns>bool</returns>
public static bool ValidatePostCode(string validteString)
{
pattern = "^\\d{6}$";
return PublicMethod(pattern, validteString);
}
/// <summary>
/// 驗證輸入字符串為網絡地址
/// </summary>
/// <param name="P_str_naddress"> 輸入字符串 </param>
/// <returns> 返回一個bool類型的值 </returns>
public bool validateNAddress(string P_str_naddress)
{
return Regex.IsMatch(P_str_naddress, @"http(s)?://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?");
}
}
{
/// <summary>
/// 正則表達式字符串
/// </summary>
public static string pattern ;
/// <summary>
/// 公共方法
/// </summary>
/// <param name="pattern">正則表達式</param>
/// <param name="validteString">待驗證字符串</param>
/// <returns>Bool</returns>
private static bool PublicMethod(string pattern, string validteString)
{
Regex reg = new Regex(pattern);
Match m = reg.Match(validteString);
return m.Success;
}
/// <summary>
/// 驗證正整數
/// </summary>
/// <param name="validteString">待驗證字符串</param>
/// <returns>bool</returns>
public static bool ValidteData(string validteString)
{
pattern = "^[+]?\\d+$";
return PublicMethod(pattern,validteString);
}
/// <summary>
/// 驗證正負整數
/// </summary>
/// <param name="validteString">待驗證字符串</param>
/// <returns>bool</returns>
public static bool ValidatePlusMinus(string validteString)
{
pattern = "^([-+]?\\d+)(\\.\\d+)?$";
return PublicMethod(pattern, validteString);
}
/// <summary>
/// 驗證字母和數字
/// </summary>
/// <param name="validteString">待驗證字符串</param>
/// <returns>bool</returns>
public static bool VadidateDataLetter(string validteString)
{
pattern = "^[a-zA-Z0-9]+$";
return PublicMethod(pattern, validteString);
}
/// <summary>
/// 驗證中文字符
/// </summary>
/// <param name="validteString">待驗證字符串</param>
/// <returns>bool</returns>
public static bool ValidateChineseChar(string validteString)
{
pattern = "^[\u4e00-\u9fa5]+$";
return PublicMethod(pattern, validteString);
}
/// <summary>
/// 驗證時間-【H:mm:ss】
/// </summary>
/// <param name="validteString">待驗證字符串</param>
/// <returns>bool</returns>
public static bool ValidateTime(string validteString)
{
pattern = "^[0-9]{1,2}:[0-9]{2}(:[0-9]{2})?$";
return PublicMethod(pattern, validteString);
}
/// <summary>
/// 驗證固定電話
/// </summary>
/// <param name="validteString">待驗證字符串</param>
/// <returns>bool</returns>
public static bool ValidateTel(string validteString)
{
pattern = "^([0-9]{3,4}-)?[0-9]{7,8}$";
return PublicMethod(pattern, validteString);
}
/// <summary>
/// 驗證手機號碼
/// </summary>
/// <param name="validteString">待驗證字符串</param>
/// <returns>bool</returns>
public static bool ValidatePhone(string validteString)
{
pattern = "^(13|15|18)[0-9]{9}$";
return PublicMethod(pattern, validteString);
}
/// <summary>
/// 驗證郵箱
/// </summary>
/// <param name="validteString">待驗證字符串</param>
/// <returns>bool</returns>
public static bool ValidateEmail(string validteString)
{
pattern = "^\\w+([+-.]\\w+)*@\\w+([-.]\\w+)*$";
return PublicMethod(pattern, validteString);
}
/// <summary>
/// 驗證郵編
/// </summary>
/// <param name="validteString">待驗證字符串</param>
/// <returns>bool</returns>
public static bool ValidatePostCode(string validteString)
{
pattern = "^\\d{6}$";
return PublicMethod(pattern, validteString);
}
/// <summary>
/// 驗證輸入字符串為網絡地址
/// </summary>
/// <param name="P_str_naddress"> 輸入字符串 </param>
/// <returns> 返回一個bool類型的值 </returns>
public bool validateNAddress(string P_str_naddress)
{
return Regex.IsMatch(P_str_naddress, @"http(s)?://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?");
}
}

浙公網安備 33010602011771號