C# 数据验证Regex示例详解

 更新时间:2025年02月12日 09:42:27   作者:幻想趾于现实  
文章介绍了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内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 在WPF中合并两个ObservableCollection集合

    在WPF中合并两个ObservableCollection集合

    这篇文章介绍了在WPF中合并两个ObservableCollection集合的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-06-06
  • C#比较二个数组并找出相同或不同元素的方法

    C#比较二个数组并找出相同或不同元素的方法

    这篇文章主要介绍了C#比较二个数组并找出相同或不同元素的方法,涉及C#针对数组的交集、补集等集合操作相关技巧,非常简单实用,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-11-11
  • c#如何使用UDP进行聊天通信

    c#如何使用UDP进行聊天通信

    这篇文章主要介绍了c#如何使用UDP进行聊天通信问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • C#异步调用实例小结

    C#异步调用实例小结

    这篇文章主要介绍了C#异步调用的方法,实例分析了C#同步调用及异步调用的常用技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-08-08
  • Unity UGUI的CanvasScaler画布缩放器组件介绍使用

    Unity UGUI的CanvasScaler画布缩放器组件介绍使用

    这篇文章主要为大家介绍了Unity UGUI的CanvasScaler画布缩放器组件介绍使用,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-07-07
  • c#互斥锁Mutex类用法介绍

    c#互斥锁Mutex类用法介绍

    本文详细讲解了c#互斥锁Mutex类的用法,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-02-02
  • C# 对Outlook2010进行二次开发的图文教程

    C# 对Outlook2010进行二次开发的图文教程

    下面小编就为大家分享一篇C# 对Outlook2010进行二次开发的图文教程,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2017-12-12
  • c#数学表示法(后缀表示法)详解

    c#数学表示法(后缀表示法)详解

    什么是后缀表达式,查了下原来是一种比较特殊的数学表达式,有三种表达式:前缀表达式、中缀表达式和后缀表达式,下面我们使用示例学习一下
    2014-01-01
  • C#使用MSTest进行单元测试的示例代码

    C#使用MSTest进行单元测试的示例代码

    MSTest是微软官方提供的.NET平台下的单元测试框架,这篇文章主要为大家详细介绍了C#如何使用MSTest进行单元测试,感兴趣的小伙伴可以参考一下
    2023-12-12
  • C# 列表List的常用属性和方法介绍

    C# 列表List的常用属性和方法介绍

    这篇文章主要介绍了C# 列表List的常用属性和方法介绍,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-04-04

最新评论