using System;using System.Data;using System.Configuration;using System.Web;using System.Text.RegularExpressions;namespace BaseFunction{ public class PageValidate { public PageValidate() { // // TODO: 在此處添加建構函式邏輯 // } private static Regex RegNumber = new Regex("^[0-9]+{1}quot;); private static Regex RegNumberSign = new Regex("^[+-]?[0-9]+{1}quot;); private static Regex RegDecimal = new Regex("^[0-9]+[.]?[0-9]+{1}quot;); private static Regex RegDecimalSign = new Regex("^[+-]?[0-9]+[.]?[0-9]+{1}quot;); //等價於^[+-]?\d+[.]?\d+$ private static Regex RegEmail = new Regex("^[\\w-]+@[\\w-]+\\.(com|net|org|edu|mil|tv|biz|info){1}quot;);//w 英文字母或數位字串,和 [a-zA-Z0-9] 文法一樣 private static Regex RegCHZN = new Regex("[\u4e00-\u9fa5]"); public static Regex RegMobile = new Regex("^1(3[4-9]|5[012789]|8[7-8])\\d{8}{1}quot;); //驗證聯通手機號碼 public static Regex RegUnicom = new Regex("^1(3[012]|5[56]|8[5-6])\\d{8}{1}quot;); //驗證聯通固話 #region 日期檢查 /// <summary> /// Format 的摘要說明。 /// </summary> public string IsDateTime(string Record) { if (Convert.ToDateTime(Record).ToString("yyyy-MM-dd") == DateTime.MaxValue.ToString("yyyy-MM-dd") || Convert.ToDateTime(Record).ToString("yyyy-MM-dd") == DateTime.MinValue.ToString("yyyy-MM-dd") || Record == "" || Convert.ToDateTime(Record).ToString("yyyy-MM-dd") == "1900-01-01") return "—"; else return Convert.ToDateTime(Record).ToString("yyyy-M-dd"); } #endregion #region 數字字串檢查 /// <summary> /// 是否數字字串 /// </summary> /// <param name="inputData">輸入字串</param> /// <returns></returns> public static bool IsNumber(string inputData) { Match m = RegNumber.Match(inputData); return m.Success; } /// <summary> /// 是否數字字串 可帶加號或減號 /// </summary> /// <param name="inputData">輸入字串</param> /// <returns></returns> public static bool IsNumberSign(string inputData) { Match m = RegNumberSign.Match(inputData); return m.Success; } /// <summary> /// 是否是浮點數 /// </summary> /// <param name="inputData">輸入字串</param> /// <returns></returns> public static bool IsDecimal(string inputData) { Match m = RegDecimal.Match(inputData); return m.Success; } /// <summary> /// 是否是浮點數 可帶加號或減號 /// </summary> /// <param name="inputData">輸入字串</param> /// <returns></returns> public static bool IsDecimalSign(string inputData) { Match m = RegDecimalSign.Match(inputData); return m.Success; } #endregion #region 中文檢測 /// <summary> /// 檢測是否有中文字元 /// </summary> /// <param name="inputData"></param> /// <returns></returns> public static bool IsHasCHZN(string inputData) { Match m = RegCHZN.Match(inputData); return m.Success; } #endregion #region 郵件地址 /// <summary> /// 是否是浮點數 可帶加號或減號 /// </summary> /// <param name="inputData">輸入字串</param> /// <returns></returns> public static bool IsEmail(string inputData) { Match m = RegEmail.Match(inputData); return m.Success; } /// <summary> /// 驗證是否為移動號碼 /// </summary> /// <param name="number">手機號</param> /// <returns>Boolean</returns> public static Boolean isMobile(string number) { Match m = RegMobile.Match(number); return m.Success; } /// <summary> /// 驗證是否為聯通號碼 /// </summary> /// <param name="number">手機號</param> /// <returns></returns> public static Boolean IsUnicom(string number) { Match m = RegUnicom.Match(number); return m.Success; } #endregion #region 其他 /// <summary> /// 檢查字串最大長度,返回指定長度的串 /// </summary> /// <param name="sqlInput">輸入字串</param> /// <param name="maxLength">最大長度</param> /// <returns></returns> public static string SqlText(string sqlInput, int maxLength) { if (sqlInput != null && sqlInput != string.Empty) { sqlInput = sqlInput.Trim(); if (sqlInput.Length > maxLength)//按最大長度截取字串 sqlInput = sqlInput.Substring(0, maxLength); } return sqlInput; } #endregion }}