常用的正则表达式

网络链接:
(h|H)(r|R)(e|E)(f|F)  *=  *('|")?(\w|\\|\/|\.)+('|"|  *|>)?  

邮件地址:
\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*  

图片链接:
(s|S)(r|R)(c|C)  *=  *('|")?(\w|\\|\/|\.)+('|"|  *|>)?

ip地址:  
(\d+)\.(\d+)\.(\d+)\.(\d+)    

中国手机号码:
(86)*0*13\d{9}    

中国固定电话号码:
(\(\d{3,4}\)|\d{3,4}-|\s)?\d{8}    

中国电话号码(包括移动和固定电话):
(\(\d{3,4}\)|\d{3,4}-|\s)?\d{7,14}    

中国邮政编码:
[1-9]{1}(\d+){5}    

中国身份证号码:
\d{18}|\d{15}    

整数:
\d+    

浮点数(即小数):
(-?\d*)\.?\d+    

任何数字  :
(-?\d*)(\.\d+)?  

中文字符串:
[\u4e00-\u9fa5]*    

双字节字符串  (汉字):
[^\x00-\xff]*  

英文字符串:
\w*

  腾讯QQ     
  ^[1-9]*[1-9][0-9]*$ 
  
  
非负整数     
^\d+$

正整数
^[0-9]*[1-9][0-9]*$
非正整数       
  ^((-\\d+)|(0+))$

负整数    
  ^-[0-9]*[1-9][0-9]*$
整数    
    
  ^-?\\d+$
非负浮点数    
^\\d+(\\.\\d+)?$
正浮点数
  ^(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*))$
 非正浮点数   

  ^((-\\d+(\\.\\d+)?)|(0+(\\.0+)?))$ 
负浮点数  
 ^(-(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*)))$ 
26个英文字母组成的字符串
  ^[A-Za-z]+$ 
 26个英文字母的大写组成的字符串   
  ^[A-Z]+$ 
26个英文字母的小写组成的字符串 
  ^[a-z]+$ 
由数字和26个英文字母组成的字符串     
  ^[A-Za-z0-9]+$ 
数字、26个英文字母或者下划线组成的字符串
  ^\\w+$

日期:YYYY-MM
\d{4}-(1[0-2]|[1-9])


严格的日期验证包括格式和逻辑上的合法性!
^((((19|20)(([02468][048])|([13579][26]))-02-29))|((20[0-9][0-9])|(19[0-9][0-9]))-((((0[1-9])|(1[0-2]))-((0[1-9])|(1\d)|(2[0-8])))|((((0[13578])|(1[02]))-31)|(((01,3-9])|(1[0-2]))-(29|30)))))$
Matches:  [2002-01-31], [1997-04-30], [2004-01-01]  [ More Details] 
No-Matches:  [2002-01-32], [2003-02-29], [04-01-01]

C#中使用正则表达式 (判断YYYY-MM-DD这种格式)
^((((1[6-9]|[2-9]\d)\d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]\d|3[01]))|(((1[6-9]|[2-9]\d)\d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]\d|30))|(((1[6-9]|[2-9]\d)\d{2})-0?2-(0?[1-9]|1\d|2[0-8]))|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-))$


下面的是加了时间验证的
^((((1[6-9]|[2-9]\d)\d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]\d|3[01]))|(((1[6-9]|[2-9]\d)\d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]\d|30))|(((1[6-9]|[2-9]\d)\d{2})-0?2-(0?[1-9]|1\d|2[0-8]))|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-)) (20|21|22|23|[0-1]?\d):[0-5]?\d:[0-5]?\d$

posted @ 2007-04-10 10:33  dodo-yufan  阅读(294)  评论(1编辑  收藏  举报