php正则匹配汉字!

/^[\x{4e00}-\x{9fa5}]+$/u

以上这个正则表达式就是困扰了很多php程序员的匹配汉字的正则表达式

大家可能会觉得很简单,实际上不同编码,不同程序语言,都有些细微的出入,稍不注意就得不到正确的结果。

下面是utf-8编码的例子:
$str = "汉字";
if (preg_match("/^[\x{4e00}-\x{9fa5}]+$/u",$str)) {
print("该字符串全部是中文");
} else {
print("该字符串不全部是中文");

下面的例子包含gbk,gb2312的例子:

<?php
$action = trim($_GET['action']);
if($action == "sub")
{
    $str = $_POST['dir'];    
    //if(!preg_match("/^[".chr(0xa1)."-".chr(0xff)."A-Za-z0-9_]+$/",$str)) //GB2312汉字字母数字下划线正则表达式 
    if(!preg_match("/^[\x{4e00}-\x{9fa5}A-Za-z0-9_]+$/u",$str))   //UTF-8汉字字母数字下划线正则表达式
    {   
         echo "<font color=red>您输入的[".$str."]含有违法字符</font>";   
     }
     else 
     {
         echo "<font color=green>您输入的[".$str."]完全合法,通过!</font>";   
     }
}
?>
<form method="POST" action="?action=sub">
输入字符(数字,字母,汉字,下划线):
     <input type="text" name="dir" value="">
     <input type="submit" value="提交">
</form>

来源:http://blog.csdn.net/lihaiboas1/article/details/7030735

php正则匹配汉字!相关推荐

  1. python正则匹配汉字

    python正则匹配汉字的规则为:[\u4e00-\u9fa5] 后面可以加一个+,匹配多个汉字. 例子如下: print(re.findall(r'[\u4e00-\u9fa5]+', '这是测试用 ...

  2. java正则匹配汉字_正则表达式匹配中文汉字

    文章告诉你如何利用php教程 正则表达式匹配中文汉字哦,下面我们主要讲利用preg_match mb_eregi来验证汉字,并且正则过程出现问题的解决方法. preg_match("/[a- ...

  3. php utf-8正则匹配汉字,php utf-8编码 正则匹配中文

    首先unicode里面 中文的区域的0x4e00-0x9fa5 在java或者js这种已unicode编码处理字符串的编程语言中 /^[\u4e00-\u9fa5]+$/就可以判断一个字符串是否全部为 ...

  4. idea使用正则匹配汉字

    此示例仅为自身匹配汉字所遇到的情形,其他诸如字母数字等的匹配,可进行学习. ^[\u4e00-\u9fa5]*$ ^:正则开头 $:正则结尾 转载于:https://www.cnblogs.com/s ...

  5. js正则 匹配 汉字、数字、英文字母、下划线 正则表达式

    1.由数字.26个英文字母或者下划线组成的字符串: ^[0-9a-zA-Z_]{1,}$ 2.非负整数(正整数 + 0 ): ^/d+$ 3.正整数: ^[0-9]*[1-9][0-9]*$ 4.非正 ...

  6. js正则 匹配 汉字、数字、英文字母、下划线 的 正则表达式

    1.由数字.26个英文字母或者下划线组成的字符串: ^[0-9a-zA-Z_]{1,}$ 2.非负整数(正整数 + 0 ): ^/d+$ 3.正整数: ^[0-9]*[1-9][0-9]*$ 4.非正 ...

  7. 正则表达式常用规则:js正则 匹配 汉字、数字、英文字母、下划线 的 正则表达式

    1.由数字.26个英文字母或者下划线组成的字符串: ^[0-9a-zA-Z_]{1,}$ 2.非负整数(正整数 + 0 ): ^/d+$ 3.正整数: ^[0-9]*[1-9][0-9]*$ 4.非正 ...

  8. python正则匹配数字或者汉字

    1.正则匹配汉字 import re str1='hjggj小vjjk明' pat=re.compile(r'[\u4e00-\u9fa5]+') result=pat.findall(str1) p ...

  9. python正则中如何匹配汉字以及encode(‘utf-8’)和decode(‘utf-8’)的互转

    正则表达式: [\u2E80-\u9FFF]+$ 匹配所有东亚区的语言  [\u4E00-\u9FFF]+$ 匹配简体和繁体  [\u4E00-\u9FA5]+$ 匹配简体  <input ty ...

最新文章

  1. 小程序统一服务消息_[miniblog]小程序订阅消息踩坑记
  2. pycharm和python区别-python与pycharm有何区别
  3. 编程猜单词游戏python_Python实现简单的猜单词小游戏
  4. C++一天一个程序(二)
  5. python 新手常见问题
  6. PMP学习资料干货分享 - 干货满满
  7. word删除空白页的方法和技巧详细介绍,提高工作效率!!!!!!!!!!!!
  8. 使用FTP服务器进行文件上传与下载
  9. 调用支付宝网页支付被浏览器拦截
  10. DeepFM算法详解-推荐算法中的皇冠
  11. BZOJ4698 Sdoi2008 Sandy的卡片
  12. 生产者消费者问题——管程法
  13. ObjectARX编程(六) ------块和属性
  14. 论苹果与安卓系统争霸
  15. 对比这10个注意事项,你的网页文字排版达标了么?
  16. 怎么把mp4转换成gif格式?在线转换方法
  17. hp刀片服务器重装,HP刀片服务器安装系统教程b280c.doc
  18. JQuery 09 DOM编程之用户注册页面实现案例
  19. 软件设计师---知识产权
  20. 阿里巴巴IPv6应用平台引领下一代互联网

热门文章

  1. ContextMenu和ContextMenuItem
  2. 【经验】VMware|windows更新20H2版本后VMware虚拟机无法开启(禁用Device guard)
  3. 如何配置使用新的单线激光雷达
  4. SQL注入的攻击与防御(简单篇)
  5. 知识图谱--实体关系抽取,依存句法分析
  6. c语言编程编写计算器图形,c语言编写的图形计算器.DOC
  7. STC12系列单片机的1T模式和12T模式
  8. 拆解USB无线网卡,电路方案非常经典(附高清美图)
  9. Proxifier使用教程
  10. stm32入门——定时器中断和中断优先级简介