正则表达式

email和数字,字母,下划线还有汉字的正则表达式

关键字: 正则表达式 email 数字 字母 下划线 汉字

自己总结的正则表达式:绝对正确的,本人已经验证通过了。

Java代码

  1. 1. 只有字母、数字和下划线且不能以下划线开头和结尾的正则表达式:^(?!_)(?!.*?_$)[a-zA-Z0-9_]+$   
  2. 只有字母和数字的: ^[a-zA-Z0-9_]+$   
  3. 2. 至少一个汉字、数字、字母、下划线: "[a-zA-Z0-9_\u4e00-\u9fa5]+"         
  4. 3. 至少一个汉字的正则表达式:"^[\u4e00-\u9fa5]"  
  5. 4. 最多10个汉字: ValidationExpression="^[\u4e00-\u9fa5]{0,10}"  
  6. 5. 只含有汉字、数字、字母、下划线不能以下划线开头和结尾:^(?!_)(?!.*?_$)[a-zA-Z0-9_\u4e00-\u9fa5]+$    
  7. 解释:   
  8. ^  与字符串开始的地方匹配   
  9. (?!_)  不能以_开头   
  10. (?!.*?_$)  不能以_结尾   
  11. [a-zA-Z0-9_\u4e00-\u9fa5]+  至少一个汉字、数字、字母、下划线   
  12. $  与字符串结束的地方匹配   
  13. 6. email正则表达式:两种方式都可以   
  14. (1) \w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*   
  15. (2) ^[_A-Za-z0-9-]+(\\.[_A-Za-z0-9-]+)*@[A-Za-z0-9-]+(\\.[A-Za-z0-9-]+)*((\\.[A-Za-z]{2,}){1}$)   

1. 只有字母、数字和下划线且不能以下划线开头和结尾的正则表达式:^(?!_)(?!.*?_$)[a-zA-Z0-9_]+$

    只有字母和数字的: ^[a-zA-Z0-9_]+$

2. 至少一个汉字、数字、字母、下划线: "[a-zA-Z0-9_\u4e00-\u9fa5]+"      

3. 至少一个汉字的正则表达式:"^[\u4e00-\u9fa5]"

4. 最多10个汉字: ValidationExpression="^[\u4e00-\u9fa5]{0,10}"

5. 只含有汉字、数字、字母、下划线不能以下划线开头和结尾:^(?!_)(?!.*?_$)[a-zA-Z0-9_\u4e00-\u9fa5]+$

   解释:

        ^  与字符串开始的地方匹配

        (?!_)  不能以_开头

        (?!.*?_$)  不能以_结尾

        [a-zA-Z0-9_\u4e00-\u9fa5]+  至少一个汉字、数字、字母、下划线

        $  与字符串结束的地方匹配

 

6. email正则表达式:两种方式都可以

   (1) \w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*

   (2) ^[_A-Za-z0-9-]+(\\.[_A-Za-z0-9-]+)*@[A-Za-z0-9-]+(\\.[A-Za-z0-9-]+)*((\\.[A-Za-z]{2,}){1}$)

 下面是转载的(但我验证了下怎么没有成功?又期待性):

Java代码

  1. 完美E-Mail正则表达式:   
  2. 国际域名格式如下:        
  3. 域名由各国文字的特定字符集、英文字母、数字及“-”(即连字符或减号)任意组合而成,   但开头及结尾均不能含有“-”,“-”不能连续出现   。   域名中字母不分大小写。域名最长可达60个字节(包括后缀.com、.net、.org等)。        
  4.   
  5.   
  6. /^[a-z]([a-z0-9]*[-_]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[\.][a-z]{2,3}([\.][a-z]{2})?$/i;      
  7.   
  8. /内容/i   构成一个不区分大小写的正则表达式;      
  9. ^   匹配开始      
  10. $   匹配结束      
  11. [a-z]   E-Mail前缀必需是一个英文字母开头      
  12.   
  13. ([a-z0-9]*[-_]?[a-z0-9]+)*   和_a_2、aaa11、_1_a_2匹配,和a1_、aaff_33a_、a__aa不匹配,如果是空字符,也是匹配的,*表示0个或者多个。      
  14. *表示0个或多个前面的字符.      
  15. [a-z0-9]*   匹配0个或多个英文字母或者数字      
  16. [-_]?   匹配0个或1“-”,因为“-”不能连续出现      
  17. [a-z0-9]+   匹配1个或多个英文字母或者数字,因为“-”不能做为结尾      
  18.   
  19. @   必需有个有@      
  20. ([a-z0-9]*[-_]?[a-z0-9]+)+   见上面([a-z0-9]*[-_]?[a-z0-9]+)*解释,但是不能为空,+表示一个或者为多个。      
  21. [\.]   将特殊字符(.)当成普通字符      
  22. [a-z]{2,3}   匹配2个至3个英文字母,一般为com或者net等.      
  23. ([\.][a-z]{2})?   匹配0个或者1[\.][a-z]{2}(比如.cn等)   我不知道一般.com.cn最后部份是不是都是两位的,如果不是请修改{2}为{起始字数,结束字数}   

完美E-Mail正则表达式:

国际域名格式如下:     

          域名由各国文字的特定字符集、英文字母、数字及“-”(即连字符或减号)任意组合而成,   但开头及结尾均不能含有“-”,“-”不能连续出现   。   域名中字母不分大小写。域名最长可达60个字节(包括后缀.com、.net、.org等)。     

    

    

  /^[a-z]([a-z0-9]*[-_]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[\.][a-z]{2,3}([\.][a-z]{2})?$/i;   

    

  /内容/i   构成一个不区分大小写的正则表达式;   

  ^   匹配开始   

  $   匹配结束   

  [a-z]   E-Mail前缀必需是一个英文字母开头   

    

  ([a-z0-9]*[-_]?[a-z0-9]+)*   和_a_2、aaa11、_1_a_2匹配,和a1_、aaff_33a_、a__aa不匹配,如果是空字符,也是匹配的,*表示0个或者多个。   

  *表示0个或多个前面的字符.   

  [a-z0-9]*   匹配0个或多个英文字母或者数字   

  [-_]?   匹配0个或1“-”,因为“-”不能连续出现   

  [a-z0-9]+   匹配1个或多个英文字母或者数字,因为“-”不能做为结尾   

    

  @   必需有个有@   

  ([a-z0-9]*[-_]?[a-z0-9]+)+   见上面([a-z0-9]*[-_]?[a-z0-9]+)*解释,但是不能为空,+表示一个或者为多个。   

  [\.]   将特殊字符(.)当成普通字符   

  [a-z]{2,3}   匹配2个至3个英文字母,一般为com或者net等.   

  ([\.][a-z]{2})?   匹配0个或者1个[\.][a-z]{2}(比如.cn等)   我不知道一般.com.cn最后部份是不是都是两位的,如果不是请修改{2}为{起始字数,结束字数}

 下面也是转载的:

Java代码

  1. 1、一个正则表达式,只含有汉字、数字、字母、下划线不能以下划线开头和结尾:   
  2. ^(?!_)(?!.*?_$)[a-zA-Z0-9_\u4e00-\u9fa5]+$  其中:   
  3. ^  与字符串开始的地方匹配   
  4. (?!_)  不能以_开头   
  5. (?!.*?_$)  不能以_结尾   
  6. [a-zA-Z0-9_\u4e00-\u9fa5]+  至少一个汉字、数字、字母、下划线   
  7. $  与字符串结束的地方匹配   
  8. 放在程序里前面加@,否则需要\\进行转义 @"^(?!_)(?!.*?_$)[a-zA-Z0-9_\u4e00-\u9fa5]+$"  
  9. (或者:@"^(?!_)\w*(?<!_)$"    或者  @" ^[\u4E00-\u9FA50-9a-zA-Z_]+$ "  )   
  10. 2、只含有汉字、数字、字母、下划线,下划线位置不限:   
  11. ^[a-zA-Z0-9_\u4e00-\u9fa5]+$   
  12. 3、由数字、26个英文字母或者下划线组成的字符串   
  13. ^\w+$   
  14. 4、2~4个汉字   
  15. @"^[\u4E00-\u9FA5]{2,4}$";    
  16. 5   
  17. ^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$   
  18. 用:(Abc)+    来分析:  XYZAbcAbcAbcXYZAbcAb   
  19. XYZAbcAbcAbcXYZAbcAb6、   
  20. [^\u4E00-\u9FA50-9a-zA-Z_]   
  21. 34555#5' -->34555#5'  
  22. [\u4E00-\u9FA50-9a-zA-Z_]    eiieng_89_   --->   eiieng_89_   
  23. _';'eiieng_88&*9_    -->  _';'eiieng_88&*9_   
  24. _';'eiieng_88_&*9_  -->  _';'eiieng_88_&*9_   
  25. public  bool RegexName(string str)   
  26. {   
  27. bool flag=Regex.IsMatch(str,@"^[a-zA-Z0-9_\u4e00-\u9fa5]+$");   
  28. return  flag;   
  29. }   
  30. Regex   reg=new   Regex("^[a-zA-Z_0-9]+$");      
  31. if(reg.IsMatch(s))      
  32. {      
  33. \\符合规则      
  34. }      
  35. else      
  36. {      
  37. \\存在非法字符      
  38. }  

手机号验证的正则为:

var reg =/^0{0,1}(13[0-9]|15[7-9]|153|156|18[7-9])[0-9]{8}$/;

var reg =/^0{0,1}(13[0-9]|15[0-9])[0-9]{8}$/;

移动手机号的验证正则为:

var reg =/^0{0,1}(13[4-9]|15[7-9]|15[0-2]|18[7-8])[0-9]{8}$/;

 

 

 

((\d{11})|^((\d{7,8})|(\d{4}|\d{3})-(\d{7,8})|(\d{4}|\d{3})-(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1})|(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1}))$)

匹配格式:
11位手机号码
3-4位区号,7-8位直播号码,14位分机号
如:123456789011234-12345678-1234

 

 

 

"^\d+$"  //非负整数(正整数 + 0 
"^[0-9]*[1-9][0-9]*$"  //正整数 
"^((-\d+)|(0+))$"  //非正整数(负整数 + 0 
"^-[0-9]*[1-9][0-9]*$"  //负整数 
"^-?\d+$"    //整数 
"^\d+(\.\d+)?$"  //非负浮点数(正浮点数 + 0 
"^(([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 
"^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$"  //负浮点
 
"^(-?\d+)(\.\d+)?$"  //浮点数 
"^[A-Za-z]+$"  //26个英文字母组成的字符串 
"^[A-Z]+$"  //26个英文字母的大写组成的字符串 
"^[a-z]+$"  //26个英文字母的小写组成的字符串 
"^[A-Za-z0-9]+$"  //由数字和26个英文字母组成的字符串 
"^\w+$"  //由数字、26个英文字母或者下划线组成的字符串 
"^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$"    //email地址 
"^[a-zA-z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$"  //url 
/^13\d{9}$/gi手机号正则表达式
public static bool IsValidMobileNo(string MobileNo)
  {
   const string regPattern = @"^(130|131|132|133|134|135|136|137|138|139)\d{8}$";
   return Regex.IsMatch(MobileNo, regPattern);
  }
正则表达式--验证手机号码:13[0-9]{9}
实现手机号前带86或是+86的情况:^((\+86)|(86))?(13)\d{9}$
电话号码与手机号码同时验证:(^(\d{3,4}-)?\d{7,8})$|(13[0-9]{9}) 
提取信息中的网络链接:(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]*

 

posted on 2017-09-13 08:12  adolfmc  阅读(615)  评论(0编辑  收藏  举报