关于php正则匹配汉字的方法介绍


Posted in PHP onApril 25, 2013
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>

PHP 相关文章推荐
PHP mkdir()定义和用法
Jan 14 PHP
php验证手机号码(支持归属地查询及编码为UTF8)
Feb 01 PHP
PHP运行环境配置与开发环境的配置(图文教程)
Jun 04 PHP
使用PHP导出Word文档的原理和实例
Oct 21 PHP
PHP和javascript常用正则表达式及用法实例
Jul 01 PHP
PHP图片库imagemagick安装方法
Sep 23 PHP
Yii实现MySQL多数据库和读写分离实例分析
Dec 03 PHP
解决yii2左侧菜单子级无法高亮问题的方法
May 08 PHP
Yii2中SqlDataProvider用法示例
Sep 22 PHP
浅谈Laravel队列实现原理解决问题记录
Aug 19 PHP
PHP分页显示的方法分析【附PHP通用分页类】
May 10 PHP
php字符串截取函数mb_substr用法实例分析
Jun 25 PHP
PHP中如何调用webservice的实例参考
Apr 25 #PHP
Php中用PDO查询Mysql来避免SQL注入风险的方法
Apr 25 #PHP
php中防止SQL注入的最佳解决方法
Apr 25 #PHP
Apache下禁止php文件被直接访问的解决方案
Apr 25 #PHP
PHP笔记之:日期函数的使用介绍
Apr 24 #PHP
php笔记之:AOP的应用
Apr 24 #PHP
php class中self,parent,this的区别以及实例介绍
Apr 24 #PHP
You might like
PHP原理之异常机制深入分析
2010/08/08 PHP
php中函数的形参与实参的问题说明
2010/09/01 PHP
php图片上传存储源码并且可以预览
2011/08/26 PHP
解析php做推送服务端实现ios消息推送
2013/07/01 PHP
教你在PHPStorm中配置Xdebug
2015/07/27 PHP
PHP实现基于状态的责任链审批模式详解
2019/05/31 PHP
csdn 博客中实现运行代码功能实现
2009/08/29 Javascript
基于jQuery的日期选择控件
2009/10/27 Javascript
jquery 1.4.2发布!主要是性能与API
2010/02/25 Javascript
关于js datetime的那点事
2011/11/15 Javascript
JavaScript异步编程:异步数据收集的具体方法
2013/08/19 Javascript
用jquery统计子菜单的条数示例代码
2013/10/18 Javascript
一个css与js结合的下拉菜单支持主流浏览器
2014/10/08 Javascript
JavaScript中DOM详解
2015/04/13 Javascript
javascript实现漂亮的拖动层,窗口拖拽特效
2015/04/24 Javascript
基于jQuery实现文本框只能输入数字(小数、整数)
2016/01/14 Javascript
js禁止表单重复提交
2017/08/29 Javascript
javascript实现点亮灯泡特效示例
2019/10/15 Javascript
JQuery事件委托(适用于给动态生成的脚本元素添加事件)
2020/02/01 jQuery
小程序自定义弹框效果
2020/11/16 Javascript
[04:00]黄浦江畔,再会英雄——完美世界DOTA2 TI9应援视频
2019/07/31 DOTA
Python 正则表达式(转义问题)
2014/12/15 Python
Python中规范定义命名空间的一些建议
2016/06/04 Python
浅谈python脚本设置运行参数的方法
2018/12/03 Python
Pycharm配置远程调试的方法步骤
2018/12/17 Python
Python使用reportlab模块生成PDF格式的文档
2019/03/11 Python
Python使用百度翻译开发平台实现英文翻译为中文功能示例
2019/08/08 Python
利用pandas将非数值数据转换成数值的方式
2019/12/18 Python
python 串行执行和并行执行实例
2020/04/30 Python
Opencv求取连通区域重心实例
2020/06/04 Python
pytorch学习教程之自定义数据集
2020/11/10 Python
路由表示做什么用的?在linux环境中怎么来配置一条默认路由?
2013/06/07 面试题
护理学中专毕业生求职信
2013/11/11 职场文书
大学生自我鉴定书
2014/03/24 职场文书
电子商务专业求职信范文
2015/03/19 职场文书
文明医院的标语集锦!
2019/07/24 职场文书