Regular Expression,簡稱?Regex,是一種用于匹配和處理文本的強大工具。它通過定義特定的模式,可以用來搜索、替換或提取字符串中的特定內容。
先引入命名空間
using System.Text.RegularExpressions;
Intege(整數)
必須是正整數
//必須是正整數public static bool IsPositiveInteger(string txt){Regex objReg = new Regex(@"^[1-9]\d*$");return objReg.IsMatch(txt);}
正整數和零
public static bool IsPositiveIntegerAndZero(string txt){Regex objReg = new Regex(@"^[1-9]\d*|0$");return objReg.IsMatch(txt);}
負整數
public static bool IsNegativeInteger(string txt){Regex objReg = new Regex(@"^-[1-9]\d*$");return objReg.IsMatch(txt);}
正負均可
public static bool IsInteger(string txt){Regex objReg = new Regex(@"^-?[1-9]\d*$");return objReg.IsMatch(txt);}
Decimal(小數)
正數
public static bool IsPositiveDecimal(string txt){Regex objReg = new Regex(@"^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$");return objReg.IsMatch(txt);}
負數
public static bool IsNegativeDecimal(string txt){Regex objReg = new Regex(@"^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$");return objReg.IsMatch(txt);}
正負均可
public static bool IsDecimal(string txt){Regex objReg = new Regex(@"^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$");return objReg.IsMatch(txt);}
其他驗證
郵箱
public static bool IsEmail(string txt){Regex objReg = new Regex(@"\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*");return objReg.IsMatch(txt);}
身份證
public static bool IsIdentityCard(string txt){Regex objReg = new Regex(@"^(\d{15}$|^\d{18}$|^\d{17}(\d|X|x))$");return objReg.IsMatch(txt);}
郵箱編碼
public static bool IsPostalCode(string txt){if (txt.Length != 6) return false;Regex objReg = new Regex(@"[1-9]\d{5}(?!\d)");return objReg.IsMatch(txt);}