[关闭]
@nextleaf 2018-05-29T06:01:40.000000Z 字数 890 阅读 1351

正则表达式,只含有汉字、数字、字母、下划线

JavaScript 正则表达式


1、一个正则表达式,只含有汉字、数字、字母、下划线不能以下划线开头和结尾:

  1. ^(?!_)(?!.*?_$)[a-zA-Z0-9_\u4e00-\u9fa5]+$其中:
  2. ^与字符串开始的地方匹配
  3. (?!_)不能以_开头
  4. (?!.*?_$)  不能以_结尾
  5. [a-zA-Z0-9_\u4e00-\u9fa5]+  至少一个汉字、数字、字母、下划线
  6. $  与字符串结束的地方匹配
  7. 放在程序里前面加@,否则需要\\进行转义 @"^(?!_)(?!.*?_$)[a-zA-Z0-9_\u4e00-\u9fa5]+$"
  8. (或者:@"^(?!_)\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、

  1. [^\u4E00-\u9FA50-9a-zA-Z_]
  2. 34555#5' -->34555#5'
  3. [\u4E00-\u9FA50-9a-zA-Z_] eiieng_89_ ---> eiieng_89_
  4. _';'eiieng_88&*9_ --> _';'eiieng_88&*9_
  5. _';'eiieng_88_&*9_ --> _';'eiieng_88_&*9_
  6. public bool RegexName(string str)
  7. {
  8. bool flag=Regex.IsMatch(str,@"^[a-zA-Z0-9_\u4e00-\u9fa5]+$");
  9. return flag;
  10. }
  11. Regex reg=new Regex("^[a-zA-Z_0-9]+$");
  12. if(reg.IsMatch(s))
  13. {
  14. \\符合规则
  15. }
  16. else
  17. {
  18. \\存在非法字符
  19. }
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注