C# 数据验证Regex示例详解
作者:幻想趾于现实
文章介绍了C#中使用Regex进行数据验证的方法,包括整数和小数的正负验证,以及邮箱和身份证号的格式验证,感兴趣的朋友一起看看吧
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); }
到此这篇关于C# 数据验证Regex的文章就介绍到这了,更多相关C# 数据验证Regex内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!