`

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

阅读更多

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

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}$) 

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

完美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}为{起始字数,结束字数} 

 下面也是转载的:

1、一个正则表达式,只含有汉字、数字、字母、下划线不能以下划线开头和结尾:
^(?!_)(?!.*?_$)[a-zA-Z0-9_\u4e00-\u9fa5]+$  其中:
^  与字符串开始的地方匹配
(?!_)  不能以_开头
(?!.*?_$)  不能以_结尾
[a-zA-Z0-9_\u4e00-\u9fa5]+  至少一个汉字、数字、字母、下划线
$  与字符串结束的地方匹配

放在程序里前面加@,否则需要\\进行转义 @"^(?!_)(?!.*?_$)[a-zA-Z0-9_\u4e00-\u9fa5]+$"
 (或者:@"^(?!_)\w*(?<!_)$"    或者  @" ^[\u4E00-\u9FA50-9a-zA-Z_]+$ "  )

2、只含有汉字、数字、字母、下划线,下划线位置不限:
  ^[a-zA-Z0-9_\u4e00-\u9fa5]+$

3、由数字、26个英文字母或者下划线组成的字符串
^\w+$

4、2~4个汉字
  @"^[\u4E00-\u9FA5]{2,4}$"; 

5、
^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$

用:(Abc)+    来分析:  XYZAbcAbcAbcXYZAbcAb



XYZAbcAbcAbcXYZAbcAb6、
[^\u4E00-\u9FA50-9a-zA-Z_]
34555#5' -->34555#5'

[\u4E00-\u9FA50-9a-zA-Z_]    eiieng_89_   --->   eiieng_89_
_';'eiieng_88&*9_    -->  _';'eiieng_88&*9_
_';'eiieng_88_&*9_  -->  _';'eiieng_88_&*9_

public  bool RegexName(string str)
  {
   bool flag=Regex.IsMatch(str,@"^[a-zA-Z0-9_\u4e00-\u9fa5]+$");
   return  flag;
  }

 Regex   reg=new   Regex("^[a-zA-Z_0-9]+$");   
  if(reg.IsMatch(s))   
  {   
  \\符合规则   
  }   
  else   
  {   
  \\存在非法字符   
  } 

 

分享到:
评论
1 楼 hexawing 2011-03-24  
3. 至少一个汉字的正则表达式:"^[\u4e00-\u9fa5]" 

这个其实不太对,你试试匹配“……”,这个也是某种特殊汉字吧

相关推荐

    所有常用的正则表达式

    配中文字符的正则表达式: [u4e00-u9fa5] 评注:匹配中文还真是个头疼的事,有了这个表达式就好办了 匹配双字节字符(包括汉字在内):[^x00-xff] 评注:可以用来计算字符串的长度(一个双字节字符长度计2,ASCII...

    C#正则表达式包括(身份证,只能输入汉字等等)

    验证用户密码:"^[a-zA-Z]\w{5,17}$"正确格式为:以字母开头,长度在6~18之间,只能包含字符、数字和下划线。 验证是否含有^%&'',;=?$\"等字符:"[^%&'',;=?$\x22]+"。 只能输入汉字:"^[\u4e00-\u9fa5]{0,}$" 验证...

    正则表达式

    匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$ 说明:表单验证时很实用 匹配国内电话号码:\d{3}-\d{8}|\d{4}-\d{7} 说明:匹配形式如 0511-4405222 或 021-...

    常用正则表达式

    整数或者小数:^[0-9]+\.{0,1}[0-9]{0,2}$ 只能输入数字:"^[0-9]*$"。 只能输入n位的数字:"^\d{n}$"。...匹配中文字符的正则表达式: [\u4e00-\u9fa5] 匹配双字节字符(包括汉字在内):[^\x00-\xff]

    常用的正则表达式的用法

    常用的正则表达式 都是一些经典的 用法, 常用正则表达式 /^\w+$/匹配由数字、26个英文字母或者下划线组成的字符串 /^[A-Za-z0-9]+$/ 匹配由数字和26个英文字母组成...匹配中文字符的正则表达式:/ [\u4e00-\u9fa5] /

    正则不求人-常用正则表达式

    匹配中文字符的正则表达式: [\u4e00-\u9fa5] 匹配双字节字符(包括汉字在内):[^\x00-\xff] 匹配空行的正则表达式:\n[\s| ]*\r 匹配HTML标记的正则表达式:/&lt;(.*)&gt;.*|&lt;(.*) \/&gt;/ 匹配首尾空格的正则表达式:(^\s*)|...

    Java-PHP正则表达式的使用

    匹配中文字符的正则表达式: [u4e00-u9fa5]  评注:匹配中文还真是个头疼的事,有了这个表达式就好办了  匹配双字节字符(包括汉字在内):[^x00-xff]  评注:可以用来计算字符串的长度(一个双字节字符长度计2...

    java script 正则表达式验证大全

    匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$ 评注:表单验证时很实用 匹配国内电话号码:d{3}-d{8}|d{4}-d{7} 评注:匹配形式如 0511-4405222 或 021-87888822 ...

    数字的正则表达式写法参考书

    8.只能输入英文和数字(有闪动)  (/[\W]/g,"’’)" onbeforepaste="clipboardData.setData(’text’,clipboardData.getData(’text’).replace(/[^\d]/g,’’))"&gt; 9.屏蔽输入法  (event.keyCode==13)event....

    java 正则表达式

    JAVA正则表达式语法(转)正则表达式语法正则表达式是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为“元字符”)。模式描述在搜索文本时要匹配的一个或多个字符串。正则表达式示例表达式 ...

    AS3正则表达式工具类

    checkUser(str:String):用户注册账号限制 以字母开头 允许占用5--16字节允许带有字母,数字和下划线 返回Boolean checkTel(str:String):固定电话格式限制 ex:021-54108458 返回Boolean checkPhone(str:String):...

    Web前端之正则表达式例子大全.pdf

    验证用户密码:^[a-zA-Z]\w{5,17}$ 正确格式为:以字母开头,长度在6-18之间,只能包含字符、数字和下划线。 验证是否含有 ^%&',;=?$\" 等字符:[^%&',;=?$\x22]+ 验证汉字:^[\u4e00-\u9fa5],{0,}$ 验证Email地址:^...

    正则表达式数字验证

    //java正则表达式数字验证 public boolean isNumber(String str) { java.util.regex.Pattern pattern=java.util.regex.Pattern.compile("[0-9]+(.[0-9]+)?"); java.util.regex.Matcher match=pattern.matcher...

    用户名、密码等15个常用的js正则表达式

    收集整理了15个常用的javaScript正则表达式,其中包括用户名、密码强度、整数、数字、电子邮件地址(Email)、手机号码、身份证号、URL地址、 IPv4地址、 十六进制颜色、 日期、 QQ号码、 微信号、车牌号、中文正则...

    正则表达式教程

    )+[a-zA-Z0-9]+\\.[x|X][m|M][l|L]$26 中文字符的正则表达式:[\u4e00-\u9fa5]27 双字节字符:[^\x00-\xff] (包括汉字在内,可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1))28 空白行的正则表达式...

    常用JavaScript正则表达式汇编与示例详解

    目前收集整理了21个常用的javaScript正则表达式,其中包括用户名、密码强度、整数、数字、电子邮件地址(Email)、手机号码、身份证号、URL地址、 IP地址、 十六进制颜色、 日期、 微信号、车牌号、中文正则等。...

    javascript组件:jsvalidation-1_0b4

    4.必须为普通英文字符(字母,数字,下划线) 5.必须为中文字符 6.最小长度 7.最大长度 8.是否为Email格式 9.是否为日期格式(yyyy-mm-dd) 10.自定义的正则表达式 11.整数范围(大于某数小于某数) 12.双精...

Global site tag (gtag.js) - Google Analytics