php中文正则匹配
今天接到一个需求,用户昵称系统需要将昵称输入的字符类型限定为 中文,英文,数字, -,_
显然这个应该用正则来实现,那么最终的规则是怎么样的呢?示例代码如下:
<?php
$str = '我爱北京天安门-1234567_abacABCDDD';
if(!preg_match("/^[\x{4e00}-\x{9fa5}A-Za-z0-9_-]+$/u",$str)) //UTF-8汉字字母数字下划线正则表达式
{
    echo "输入非法";
}else{
    echo '昵称合法';
}
这里匹配的中文是utf-8编码的,那如果要匹配 gbk 编码的中文应该怎么写呢?
<?php
$str = '毛主席万岁    ';
if(!preg_match("/^[".chr(0xa1)."-".chr(0xff)."]+$/",$str)) //gbk编码中文正则匹配
{
    echo "输入非法";
}else{
    echo '输入合法';
}
php中文正则匹配的更多相关文章
- Python中使用中文正则表达式匹配指定的中文字符串
		业务场景: 从中文字句中匹配出指定的中文子字符串 .这样的情况我在工作中遇到非常多, 特梳理总结如下. 难点: 处理GBK和utf8之类的字符编码, 同时正则匹配Pattern中包含汉字,要汉字正常发 ... 
- php 正则匹配中文(转)
		我使用正则表达式来匹配中问的时候,出现了无法匹配的问题,问题如下 PCRE does not support \L, \l, \N{name}, \U, or \u at offset 2 我原来的匹 ... 
- Python2.7 转义和正则匹配中文
		今天爬虫(新浪微博 个人信息页面)的时候遇到了转义和正则匹配中文出乱码的问题. 先给出要匹配的部分网页源代码如下: <span class=\"pt_title S_txt2\&quo ... 
- 【php正则】php正则匹配UTF-8格式的中文汉字 和 【,】【,】【。】等符号
		1.php正则匹配UTF-8格式的中文汉字 和 [,][,][.]等符号 if (preg_match_all("/([\x{4e00}-\x{9fa5}]+((,)?)+((,)?)+(( ... 
- python 正则匹配中文(unicode)(转)
		由于 需求原因,需要匹配 提取中文,大量google下,并没有我需要的.花了一个小时大概测试,此utf8中文通过,特留文. 参考: http://hi.baidu.com/nivrrex/blo ... 
- python正则匹配——中文字符的匹配
		# -*- coding:utf-8 -*- import re '''python 3.5版本 正则匹配中文,固定形式:\u4E00-\u9FA5 ''' words = 'study in 山海大 ... 
- php 使用正则匹配中文 返回结果
		$str = 'eg5455正则匹配中文123三国杀'; $patten='/[\x{4e00}-\x{9fa5}]+/u'; $a = preg_match($patten, $str, $mn); ... 
- VIM 用正则表达式,非贪婪匹配,匹配竖杠,竖线, 匹配中文,中文正则,倒数第二列, 匹配任意一个字符 :
		VIM 用正则表达式 批量替换文本,多行删除,复制,移动 在VIM中 用正则表达式 批量替换文本,多行删除,复制,移动 :n1,n2 m n3 移动n1-n2行(包括n1,n2)到n3行之下: ... 
- mysql正则匹配中文时存在的问题
		可以看到,目前正则匹配字母没问题,c出现1次,2次,3次匹配的结果都是正常的 接下来我们看看匹配中文的效果 可以看到,当匹配连续出现歪时,结果就开始不正常了 然后我去看了下mysql的中文文档中关于正 ... 
随机推荐
- JavaScript使用Object.defineProperty方法实现双数据绑定
			Object.defineProperty这个方法非常值得学习,很多mvc框架中的双向数据绑定就是通过它来实现的. 本着互联网分享精神,今天我就将我自己的见解分享给大家,希望能有所帮助. 开始使用 O ... 
- PHP学习9——MySQL数据库
			主要内容: MySQL的启动 MySQL数据库操作 数据库表设计 创建和查看表 修改表结构 MySQL语句操作 数据库备份与恢复 PHP操作MySQL数据库 面向对象的数据库操作 MySQL数据库是目 ... 
- CXF - JAX-WS入门
			相关dependency,我使用的版本是2.7.11: <dependency> <groupId>org.apache.cxf</groupId> <art ... 
- office2007安装时显示安装程序找不到 office.zh-cn\officeLR.cab怎么办
			根本原因是和VS2008有关解决方法如下:1. 找到vs2008安装程序(光盘,镜像文件,解压文件都一样),找到WCU文件夹在他里面找到WebDesignerCore文件夹,然后打开它找到WebDes ... 
- 一:Nginx知识整理
			Nginx与服务器集群 一:集群 1.什么是集群 集 合在一起 放在一起 群 一堆 很多 服务器架构集群:多台服务器组成的响应大并发,高数据量访问的架构体系. 分布式服务器架构: 特点: 1)成本高 ... 
- JAVA数据类型中的char类型
			1.JAVA中,char占2字节,16位.可在存放汉字 2.char赋值 char a='a'; //任意单个字符,加单引号. char a='中';//任意单个中文字,加单引号. char a=11 ... 
- No.2一步步学习vuejs 实例demo篇
			简单应用Vue.js 的核心是一个允许采用简洁的模板语法来声明式的将数据渲染进 DOM 的系统: <div id="app"> {{ message }} </d ... 
- 十一 Pipe
			Java NIO 管道是2个线程之间的单向数据连接.Pipe有一个source通道和一个sink通道.数据会被写到sink通道,从source通道读取. 创建管道 通过Pipe.open()方法打开管 ... 
- IoDH 实现的单例模式
			饿汉式单例类不能实现延迟加载,不管将来用不用始终占据内存:懒汉式单例类线程安全控制烦琐,而且性能受影响.有种更好的单例模式叫做Initialization Demand Holder (IoDH)的技 ... 
- JavaScript对HTML字符转义与反转义(转码和解码)
			HTML的Encode(转码)和解码(Decode)在平时的开发中也是经常要处理的,在这里总结了使用javascript处理HTML的Encode(转码)和解码(Decode)的常用方式 一.用浏览器 ... 
