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

Java代码
1.  

1. 只有字母、数字和下划线且不2.    能以下划线开头和结尾的正则表达式:^(?!_)(?!.*?_$)[a-zA-Z0-9_]+$   
 3.        只有字母和数字的: ^[a-zA-Z0-9_]+$   
 4.    2. 至少一个汉字、数字、字母、下划线: "[a-zA-Z0-9_/u4e00-/u9fa5]+"         
 5.    3. 至少一个汉字的正则表达式:"^[/u4e00-/u9fa5]"  
 6.    4. 最多10个汉字: ValidationExpression="^[/u4e00-/u9fa5]{0,10}"  
 7.    5. 只含有汉字、数字、字母、下划线不8.    能以下划线开头和结尾:^(?!_)(?!.*?_$)[a-zA-Z0-9_/u4e00-/u9fa5]+$    
 9.       解释:   
 10.            ^  与字符串开始的地方匹配   
 11.            (?!_)  不12.    能以_开头   
 13.            (?!.*?_$)  不14.    能以_结尾   
 15.            [a-zA-Z0-9_/u4e00-/u9fa5]+  至少一个汉字、数字、字母、下划线   
 16.            $  与字符串结束的地方匹配   
 17.      
 18.    6. email正则表达式:两种方式都可以   
 19.       (1) /w+([-+.]/w+)*@/w+([-.]/w+)*/./w+([-.]/w+)*   
 20.       (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.    格式如下:        
 4.              域名5.    由各国文字的特定字符集、英文字母、数字及“-”(即连字符或减号)任意组合而6.    成,   但开头及结尾均不7.    能含有“-”,8.    “-”不9.    能连续出现   。   域名10.    中字母不11.    分大小写。域名12.    最长可达60个字节(包括后缀.com、.net、.org等)。        
 13.           
 14.           
 15.      /^[a-z]([a-z0-9]*[-_]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[/.][a-z]{2,3}([/.][a-z]{2})?$/i;      
 16.           
 17.      /内容/i   构成一个不18.    区分大小写的正则表达式;      
 19.      ^   匹配开始      
 20.      $   匹配结束      
 21.      [a-z]   E-Mail前缀必需是一个英文字母开头      
 22.           
 23.      ([a-z0-9]*[-_]?[a-z0-9]+)*   和_a_2、aaa11、_1_a_2匹配,24.    和a1_、aaff_33a_、a__aa不25.    匹配,26.    如果是空字符,27.    也是匹配的,28.    *表示0个或者多个。      
 29.      *表示0个或多个前面的字符.      
 30.      [a-z0-9]*   匹配0个或多个英文字母或者数字      
 31.      [-_]?   匹配0个或1“-”,32.    因为“-”不33.    能连续出现      
 34.      [a-z0-9]+   匹配1个或多个英文字母或者数字,35.    因为“-”不36.    能做为结尾      
 37.           
 38.      @   必需有个有@      
 39.      ([a-z0-9]*[-_]?[a-z0-9]+)+   见上面([a-z0-9]*[-_]?[a-z0-9]+)*解释,40.    但是不41.    能为空,42.    +表示一个或者为多个。      
 43.      [/.]   将特殊字符(.)当成普通字符      
 44.      [a-z]{2,3}   匹配2个至3个英文字母,45.    一般为com或者net等.      
 46.      ([/.][a-z]{2})?   匹配0个或者1个[/.][a-z]{2}(比如.cn等)   我不47.    知道一般.com.cn最后部份是不48.    是都是两位的,如果不49.    是请修改{2}为{起始字数,结束字数}


 下面也是转载的:
Java代码
1.  

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