正则表达式(匹配英文、中文、数字、下划线)

发布时间:2020-08-30编辑:脚本学堂
本文介绍下,一些可用于匹配英文、中文、数字及下划线的代码,都是平时常用的。有需要的朋友,参考下吧。

如下的正则:
 

复制代码 代码示例:
^[wu4E00-u9FA5uF900-uFA2D]*$
 

1、一个正则表达式,只含有汉字、数字、字母、下划线不能以下划线开头和结尾:
^(?!_)(?!.*?_$)[a-zA-Z0-9_u4e00-u9fa5]+$  其中:
^  与字符串开始的地方匹配
(?!_) 不能以_开头
(?!.*?_$) 不能以_结尾
[a-zA-Z0-9_u4e00-u9fa5]+ 至少一个汉字、数字、字母、下划线
$ 与字符串结束的地方匹配 #by www.jb200.com
放在程序里前面加@,否则需要进行转义 @"^(?!_)(?!.*?_$)[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
XYZAbcAbcAbcXYZAbcAb

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_
 

用在c#代码中:
 

复制代码 代码示例:
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  
  {  
  存在非法字符  
  }