.Net中正则表达式

精贴 置顶
2625 0

Net中正则表达式的简单使用方法及常见验证判断

判断字符串是只是数字我们可以这样写:
return new System.Text.RegularExpressions.Regex(@"^([0-9])[0-9]*(\.\w*)?$").IsMatch(strNumber);
或者
return System.Text.RegularExpressions.Regex.IsMatch(strNumber, @"^([0-9])[0-9]*(\.\w*)?$");
第二个是使用静态方法,而第一个是直接实例化一个Regex类
通过.Net Refleactor我们可以看到:
public static bool IsMatch(string input, string pattern){
    return new Regex(pattern).IsMatch(input);
}
这个是静态方法,而且本质使用的还是 return new Regex(pattern).IsMatch(input);


常见函数:

1,是否是日期格式:
public static bool IsDateString(string str){
    return Regex.IsMatch(str, @"(\d{4})-(\d{1,2})-(\d{1,2})");
}
这个是判断是否是时间格式:
public static bool IsTime(string timeval){
    return Regex.IsMatch(timeval, "^((([0-1]?[0-9])|(2[0-3])):([0-5]?[0-9])(:[0-5]?[0-9])?)$");
}
2,是否是数字类型
public static bool IsNumber(string strNumber){
    return new Regex(@"^([0-9])[0-9]*(\.\w*)?$").IsMatch(strNumber);
}
3,是否是电子邮件格式: 
public static bool IsValidEmail(string strEmail){
    return Regex.IsMatch(strEmail, @"^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$");
}
4,是否是安全的sql
public static bool IsSafeSqlString(string str){
    return !Regex.IsMatch(str, @"[-|;|,|\/|\(|\)|\[|\]|\}|\{|%|@|\*|!|\']");
}其他继续搜集中,如果你有好的可以留言

 


一些常见正则表达式
    1.验证用户名和密码:("^[a-zA-Z]\w{5,15}$")正确格式:"[A-Z][a-z]_[0-9]"组成,并且第一个字必须为字母6~16位;
    2.验证电话号码:("^(\d{3.4}-)\d{7,8}$")正确格式:xxx/xxxx-xxxxxxx/xxxxxxxx;
    3.验证身份证号(15位或18位数字):("^\d{15}|\d{18}$");
    4.验证Email地址:("^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$");
    5.只能输入由数字和26个英文字母组成的字符串:("^[A-Za-z0-9]+$")   ;
    6.整数或者小数:^[0-9]+\.{0,1}[0-9]{0,2}$
    7.只能输入数字:"^[0-9]*$"。
    8.只能输入n位的数字:"^\d{n}$"。
    9.只能输入至少n位的数字:"^\d{n,}$"。
    10.只能输入m~n位的数字:。"^\d{m,n}$"
    11.只能输入零和非零开头的数字:"^(0|[1-9][0-9]*)$"。
    12.只能输入有两位小数的正实数:"^[0-9]+(.[0-9]{2})?$"。
    13.只能输入有1~3位小数的正实数:"^[0-9]+(.[0-9]{1,3})?$"。
    14.只能输入非零的正整数:"^\+?[1-9][0-9]*$"。
    15.只能输入非零的负整数:"^\-[1-9][]0-9"*$。
    16.只能输入长度为3的字符:"^.{3}$"。
    17.只能输入由26个英文字母组成的字符串:"^[A-Za-z]+$"。
    18.只能输入由26个大写英文字母组成的字符串:"^[A-Z]+$"。
    19.只能输入由26个小写英文字母组成的字符串:"^[a-z]+$"。
    20.验证是否含有^%&',;=?$\"等字符:"[^%&',;=?$\x22]+"。
    21.只能输入汉字:"^[\u4e00-\u9fa5]{0,}$"
    22.验证URL:"^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$"。
    23.验证一年的12个月:"^(0?[1-9]|1[0-2])$"正确格式为:"01"~"09"和"1"~"12"。
    24.验证一个月的31天:"^((0?[1-9])|((1|2)[0-9])|30|31)$"正确格式为;"01"~"09"和"1"~"31"。

"^([a-z]|\d|[\u4e00-\u9fa5]){4,16}$"

  • 没有任何评论
今日天气 ···

···

···

···

热门排行
CSS cursor鼠标样式一览表 2012-06-25
.NET后台写JS代码 2011-11-03
网站地址多出jdfwkey的问题解析及... 2010-08-25
数据库xxx的日志已满,请备份该数... 2013-07-19
百度、google、Yahoo网站地图制作... 2011-01-30
<a>标签的伪类书写顺序问题... 2010-09-04
什么是长尾关键词? 2010-09-24
CEO名言 2010-08-31
Mysql 主从数据库同步 2010-09-12
用ASP实现网页BBS 2010-11-01
博主推荐
本个人博客微信公众平台上线啦~~... 2013-10-13
饼哥网络互联上线啦~~要买域名空... 2013-09-20
网站title标题如何正确修改不会被... 2013-08-26
饼哥通讯录系统上线啦,欢迎大家... 2013-08-24
ASP .NET MYSQL 的简单分页 并不... 2013-08-19
网站有弹窗广告这样的站点,百度... 2013-08-17
做淘宝SEO优化需要注意的8大问题 2013-08-17
淘宝网怎么做SEO优化 2013-08-17
站长们要学习的“苍井空精神” 2013-08-17
苹果公司今日发布了iOS 7第五个开... 2013-08-07
随便看看
一句话入门SEO 2010-09-02
一个字符串"234.157.698.0" 要求... 2010-11-29
什么是死链接? 2010-09-18
Java根据图片建立不规则窗体详解 2013-06-26
如何进行关键词分析? 2010-09-24
Feedfetcher是什么? 2010-10-09
Cloaking-障眼法 2010-09-20
Mysql 主从数据库同步 2010-09-12
如何替换请求URL中的文字 2010-09-26
Java基础知识:Javax.comm简介 2013-06-24
RSS新闻
传媒新闻
CSDN
八卦新闻
女性新闻
台湾新闻
互联网
军事-新浪博客
IT-新浪博客
汽车新闻
游戏新闻
国际新闻
国内新闻
体育新闻
我的微博
北京 上海 杭州 深圳 广州 成都