C#验证类(使用正则表达式)

C#中的正则表达式判断日期时间的正则表达式 2[0-4]\d 匹配以2开头,十位为0到4,个位为任何数字的三位字段,25[0-5] 匹配以25 开头,个位为0到5 的三位字段,[01]?| 表示分支匹配,要么匹配前面的一部分,要么匹配后面的一部分。我们来对他进行分析,0匹配数字“0”,\d匹配一个数字,{2,3}表示重复2到3次,-只匹配”-”自身,接下来的\d同样匹配一个数字,而 {7,8}则表示重复7到8次。自定义组名还有另外一个好处,在我们的C#程序中,如果需要得到分组的值,我们就可以很明确的使用我们定义的分组的名字来得到,而不必使用下标。 阅读详情


using System;
using System.Text.RegularExpressions;
namespace bobomousecom.crm
{
 /// <summary>
 /// Regexlib 的摘要说明。
 /// </summary>
 public class Regexlib
 {
  public Regexlib()
  {
   //
   // TODO: 在此处添加构造函数逻辑
   //
  }

  //搜索输入字符串并返回所有 href=“...”值
  string DumpHrefs(String inputString) 
  {
   Regex r;
   Match m;
   r = new Regex("href//s*=//s*(?:/"(?<1>[^/"]*)/"|(?<1>//S+))",
    RegexOptions.IgnoreCase|RegexOptions.Compiled);
   for (m = r.Match(inputString); m.Success; m = m.NextMatch()) 
   {
    return("Found href " + m.Groups[1]);
   }
  }

  //验证Email地址
  bool IsValidEmail(string strIn)
  {
   // Return true if strIn is in valid e-mail format.
   return Regex.IsMatch(strIn, @"^([/w-/.]+)@((/[[0-9]{1,3}/.[0-9]{1,3}/.[0-9]{1,3}/.)|(([/w-]+/.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(/]?)$"); 
  }

  //dd-mm-yy 的日期形式代替 mm/dd/yy 的日期形式。
  string MDYToDMY(String input) 
  {
   return Regex.Replace(input,"//b(?//d{1,2})/(?//d{1,2})/(?//d{2,4})//b","${day}-${month}-${year}");
  }

  //验证是否为小数
  bool IsValidDecimal(string strIn)
  {
   
   return Regex.IsMatch(strIn,@"[0]./d{1,2}|[1]"); 
  }

  //验证是否为电话号码
  bool IsValidTel(string strIn)
  {
   return Regex.IsMatch(strIn,@"(/d+-)?(/d{4}-?/d{7}|/d{3}-?/d{8}|^/d{7,8})(-/d+)?"); 
  }

  //验证年月日
  bool IsValidDate(string strIn)
  {
   return Regex.IsMatch(strIn,@"^2/d{3}-(?:0?[1-9]|1[0-2])-(?:0?[1-9]|[1-2]/d|3[0-1])(?:0?[1-9]|1/d|2[0-3]):(?:0?[1-9]|[1-5]/d):(?:0?[1-9]|[1-5]/d)$"); 
  }

  //验证后缀名
  bool IsValidPostfix(string strIn)
  {
   return Regex.IsMatch(strIn,@"/.(?i:gif|jpg)$"); 
  }

  //验证字符是否在4至12之间
  bool IsValidByte(string strIn)
  {
   return Regex.IsMatch(strIn,@"^[a-z]{4,12}$"); 
  }

  //验证IP
  bool IsValidIp(string strIn)
  {
   return Regex.IsMatch(strIn,@"^(/d{1,2}|1/d/d|2[0-4]/d|25[0-5])/.(/d{1,2}|1/d/d|2[0-4]/d|25[0-5])/.(/d{1,2}|1/d/d|2[0-4]/d|25[0-5])/.(/d{1,2}|1/d/d|2[0-4]/d|25[0-5])$"); 
  } 
 }
}  

C#【通用】常见的数据验证(部分使用正则表达式 阅读详情

相关推荐

因时机器人-灵巧手配置方案(Ubuntu18.04)

因时机器人-灵巧手配置方案(Ubuntu18.04)

CH_monsy的博客 3637

C# 使用正则表达式

正则表达式是一种用于匹配和处理文本的强大工具,常用于字符串的搜索、替换、验证等操作。在C#中,可以使用命名空间提供的来处理正则表达式正则表达式由一系列字符和特殊字符组成,用于定义模式或规则,用于匹配和操作字符串。它具有灵活、强大的模式匹配能力,可以根据特定的模式对文本进行高效的搜索和操作。?[]()\d\w\s在C#中,可以使用Regex来创建正则表达式对象,并使用其方法进行匹配、搜索、替换等操作。MatchMatchesReplaceSplit上述代码使用正则表达式\b\w+

微软技术分享 2万+

华为OD机试2025C卷 - CPU调度策略 (C++ & Python & JAVA & JS & GO)

华为OD机试 2025C卷 CPU调度策略,提供Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解

qq_45776114的博客 1266

C#常用操作库——验证

public class Validator { #region 验证输入字符串为数字 /// /// 验证输入字符串为数字 /// /// 输入字符 /// 返回一个bool型的值 public static bool IsNumber(string strln)

kone666 2393

C# 验证帮助验证器大全

哈喽!粉丝大大们,由于工作的原因,好久没有更新博客了,现在小码依旧在软件开发的前线,今天起个大早,不过时间紧迫,今天就给大家提供一些干货,C# 实现验证器,大家可以建一个验证器Validator,将代码拷贝进去以备用。这篇文件没有啥技术好分析的,直接上代码(下篇文件我准备教大家封装一个SqlSugar底层以操作数据库,支持多个ORM、SQL、EF、LINQ等,欢迎关注更新!

很多问题不见得会出在你身上,但你亦需要想法解决问题,否则就会变成你的问题。 1549

C#验证使用正则表达式()

Code C#验证使用正则表达式) usingSystem; usingSystem.Text.RegularExpressions; namespacebobomousecom.crm { /**//**//**////<summary> ///Regexlib的摘要说明。 ///</summary> publi...

weixin_30950237的博客 222

C# 验证使用正则表达式 验证文本框)

using System; using System.Text.RegularExpressions; namespace SG_VQCDataCollection { /// <summary> /// 通过Framwork库中的Regex实现了一些特殊功能数据检查 /// </summary> public...

weixin_30551963的博客 289

验证C#正则表达式

验证C#正则表达式) 分:技术C#正则表达式2013-10-30 14:11434人阅读评论(0)收藏举报 我们经常会需要验证字符串的格式,比如密码长度范围、电子邮件格式、固定电话号码和手机号码格式等,这个时候我们经常会需要用到正则表达式。但是正则表达式用起来性能会低一点,所以在需要验证的时候能不使用正则表达式还是尽量不要使用正则表达式。 下面贴出...

awmwjjg059699222的博客 246

C# 正则表达式大全

转自:https://www.cnblogs.com/hehehehehe/p/6043710.html 文章导读 正则表达式的本质是使用一系列特殊字符模式,来表示某一字符串。正则表达式无疑是处理文本最有力的工具,而.NET提供的Regex实现了验证正则表达式的方法。Regex 表示不可变(只读)的正则表达式。它还包含各种静态方法,允许在不显式创建其他的实例的情况下使用...

worldy的专栏 4万+
上一篇: 在Visual Studio 2005的DataGridView控件中加入ComboBox下拉列表框的实现(C#)
下一篇: Oracle命名的控制方法
ahshow
博客等级 码龄22年 49粉丝 79原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值