您的位置:首页 > 其它

正则表达式-匹配:中文,英文,数字,下划线

2016-03-31 11:22 218 查看
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

XYZAbcAb


6、

[^/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

{

//存在非法字符

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: