快速业务通道

正则表达式实现资料验证的技术总结

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-21
dquo;[A-Za-z0-9_]”等效。

\W 任何非字字符匹配。与“[^A-Za-z0-9_]”等效。

\xn 匹配 n,此处的 n 是一个十六进制转义码。十六进制转义码必须正好是两位数长。例如,“\x41”匹配“A”。“\x041”与“\x04”&“1”等效。允许在正则表达式中使用 ASCII 代码。

\num 匹配 num,此处的 num 是一个正整数。到捕获匹配的反向引用。例如,“(.)\1”匹配两个连续的相同字符。

\n 标识一个八进制转义码或反向引用。如果 \n 前面至少有 n 个捕获子表达式,那么 n 是反向引用。否则,如果 n 是八进制数 (0-7),那么 n 是八进制转义码。

\nm 标识一个八进制转义码或反向引用。如果 \nm 前面至少有 nm 个捕获子表达式,那么 nm 是反向引用。如果 \nm 前面至少有 n 个捕获,那么 n 是反向引用,后面跟 m。如果前面的条件均不存在,那么当 n 和 m 是八进制数 (0-7) 时,\nm 匮..

附件二: 常用资料验证技术(正则表达式完成)

一.网络验证应用技巧

1. 验证 E-mail格式

public bool IsEmail(string str_Email)
  {
       return System.Text.RegularExpressions.Regex.IsMatch(str_Email,
       @"^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)contentquot;);
  }

2. 验证 IP 地址

public bool IPCheck(string IP)
{
string num = "(25[0-5]|2[0-4]\\d|[0-1]\\d{2}|[1-9]?\\d)";
return Regex.IsMatch(IP, ("^" + num + "\\." + num + "\\." + num + "\\." + num + "contentquot;));
}

3. 验证 URL

public bool IsUrl(string str_url)
   {
       return System.Text.RegularExpressions.Regex.IsMatch(str_url, @"http(s)?://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?");
   }

二. 常用数字验证技巧

1. 验证电话号码

public bool IsTelephone(string str_telephone)
   {
       return System.Text.RegularExpressions.Regex.IsMatch(str_telephone, @"^(\d{3,4}-)?\d{6,8}contentquot;);
   }

2. 输入密码条件(字符与数据同时出现)

public bool IsPassword(string str_password)
   {
       return System.Text.RegularExpressions.Regex.IsMatch(str_password, @"[A-Za-z]+[0-9]");
   }

3.邮政编号

public bool IsPostalcode(string str_postalcode)
   {
       return System.Text.RegularExpressions.Regex.IsMatch(str_postalcode, @"^\d{6}contentquot;);
   }

4. 手机号码

public bool IsHandset(string str_handset)
   {
       return System.Text.RegularExpressions.Regex.IsMatch(str_handset, @"^[1]+[3,5]+\d{9}contentquot;);
   }

5.身份证号

public bool IsIDcard(string str_idcard)
   {
       return System.Text.RegularExpressions.Regex.IsMatch(str_idcard, @"(^\d{18}$)|(^\d{15}$)");
   }

6. 两位小数

public bool IsDecimal(string str_decimal)
   {
       return System.Text.RegularExpressions.Regex.IsMatch(str_decimal, @"^[0-9]+(.[0-9]{2})?contentquot;);
   }

7.一年的12个月

public bool IsMonth(string str_Month)
   {
       return System.Text.RegularExpressions.Regex.IsMatch(str_Month, @"^(0?[[1-9]|1[0-2])contentquot;);
   }

8.一个月的31天

public bool IsDay(string str_day)
   {
       return System.Text.RegularExpressions.R

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号