求一个PHP正则表达式匹配(字母、数字、汉字、下划线)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求一个PHP正则表达式匹配(字母、数字、汉字、下划线)相关的知识,希望对你有一定的参考价值。

可以都是字母 或者都是数字 或者都是汉字

参考技术A <?php 


$pat = '#^([a-zA-Z]+|[0-9]+|[\\x4e00-\\x9fa5]+)$#u';

$s = "你好";

var_dump( preg_match( $pat, $s ));

参考技术B /^[\\u4e00-\\u9fa5a-zA-Z0-9_]+$/

参考技术C /^[A-Za-z0-9\u4eoo-\u9fah]+$/ 参考技术D "/^[\u4e00-\u9fa5\w]+$/" 第5个回答  2017-07-28 ^[a-zA-Z0-9_/u4e00-/u9fa5]+$

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

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   
     
  //存在非法字符   
 

以上是关于求一个PHP正则表达式匹配(字母、数字、汉字、下划线)的主要内容,如果未能解决你的问题,请参考以下文章

PHP中正则表达式匹配字母

求PHP用户名注册验证正则表达式(6-16位字符,字母开头,只包含字母数字下划线)可支持中文

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

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

正则表达式总结

正则表达式