ouzining

 

老爱忘记的正则表达式

程序里面经常会遇到要规范输入的地方,但是记性不太好,正则表达式都记不住,不纠结了,每次要用到还得去查,不如自己写在这里查起来方便。

来吧,第一个:整数数字

 bool System.Text.RegularExpressions.Regex.IsMatch(str, @"^[0-9]*$");

第二个:手机号码

bool System.Text.RegularExpressions.Regex.IsMatch(st, @"^[1]+[3,5]+\d{9}");

第三个:身份证号码

bool System.Text.RegularExpressions.Regex.IsMatch(str, @"(^\d{17}(?:\d|x)$)|(^\d{15}$)");

第四个:邮政编码

bool System.Text.RegularExpressions.Regex.IsMatch(str, @"^\d{6}$");

挑个身份证的来讲讲吧,“(^\d{17}(?:\d|x)$)|(^\d{15}$)”这一串字符中用“|”分开,也就是“(^\d{17}(?:\d|x)$)”这个东西和“(^\d{15}$)”这个东西是或的关系,“(^\d{17}(?:\d|x)$)”我们来翻译一下就好了,我记不住这东西所以干脆不记它,知道意思下次自己写吧,不对再回来查,“^”表示开始“$”表示结束,“\d”表示匹配数字“\d{17}”表示匹配17位的数字,“(?:\d|x)”表示这个地方可以是数字也可以是大写的“X”,这东西再深一点我就不太知道了,就现在来说够用了,有时间再深究。

posted on 2015-04-15 17:07  ouzining  阅读(139)  评论(0编辑  收藏  举报

导航