当前位置:首页 » 编程语言 » php正则汉字

php正则汉字

发布时间: 2023-01-02 03:57:43

‘壹’ php 正则表达式 【以汉字“王”开头,后面匹配1~2个汉字】的正则表达式怎么写求高手指教

$pa = '/[\x4e00-\x9fa5]/U';
var_mp(preg_match($pa,'汉字'));
/*********************************************/

$pa = '/\x29579[\x4e00-\x9fa5]{2}/U';

‘贰’ php preg_replace()正则匹配汉字,网上搜的都不对啊!

匹配任意中文字符(unicode编码):[\x{4e00}-\x{9fff}] (GBK编码):([\xb0-\xfe][\x00-\xff])+ 这是我在阅读《正则指引》一书,书中写的,亲测可行。

‘叁’ 中文字符,汉字在PHP正则表达式里该怎么表达

if(!preg_match("/^[\u4e00-\u9fa5]+$/", $content)){ echo "<script language=\"JavaScript\">alert(\"网站关键词输入不合法!\");</script>"; }else{ file_put_contents("../_cfg.php",$configs); msg("<a style=\"color:#075587\" href=\"?act=list\">返回网站初始化设置页面</a>","",""); }
结果如下,显示:Warning: preg_match() [function.preg-match]: Compilation failed: PCRE does not support \L, \l, \N, \U, or \u at offset 3 in /data/home/qxu1084910324/htdocs/op/set.php on line 73,意思是\L等不支持。

if(!preg_match("/^[\x4e00-\x9fa5]+$/", $content)){ echo "<script language=\"JavaScript\">alert(\"网站关键词输入不合法!\");</script>"; }
换成这样显示如下:虽然不出错了,但是依然不能判别。

if(!preg_match("/^[\x80-\xff]*^/", $content)){ echo "<script language=\"JavaScript\">alert(\"网站关键词输入不合法!\");</script>"; }
改成这样匹配所有utf8包括全角和特殊,显示成功,但是由于我必须要排除特殊字符和全角符号,再尝试方法:

if(!preg_match("/^[\x{2460}-\x{2468}]+$/u", $content)){ echo "<script language=\"JavaScript\">alert(\"网站关键词输入不合法!\");</script>"; }
显示错误:

if(!preg_match("/^[\x4e00-\x9fa5]+$/u", $content)){ echo "<script language=\"JavaScript\">alert(\"网站关键词输入不合法!\");</script>"; }
这个显示如下:Warning: preg_match() [function.preg-match]: Compilation failed: invalid UTF-8 string at offset 6 in /data/home/qxu1084910324/htdocs/op/set.php on line 73,utf8格式字符超过范围。

6
if(!preg_match("/^[\x{4e00}-\x{9fa5}]+$/u", $content)){ echo "<script language=\"JavaScript\">alert(\"网站关键词输入不合法!\");</script>"; }
显示成功。

‘肆’ PHP正则表达,汉字大小写字母数字下划线以及@符号

邮箱的正则表达式为:/^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0-9-]+(.[a-z0-9-]+)*$/,其他的一楼已经回答得很完备了

‘伍’ PHP正则匹配中文字母数字正则表达式

方法一

代码如下 if(preg_match("/^d*$/" " ")) { echo "全数字 "; }

if(preg_match("/^[a z]*$/i" "fdsFDfd")) { echo "全字母 "; }

if(preg_match("/^[a zd]*$/i" "fd fd ")) { echo "有数字有字母 "; }

中文汉字

代码如下 $username=$_REQUEST[ username ]; if(!preg_match("/^[a z xa xff]{ }$/" $username)) { echo" r "; exit; }

上面是比较散的 下面把几个总结到一起来

lishixin/Article/program/PHP/201311/21332

‘陆’ php怎么将中文利用正则表达式匹配出来

正则匹配中文汉字根据页面编码不同而略有区别:

GBK/GB2312编码:[x80-xff]+ 或 [xa1-xff]+

UTF-8编码:[x{4e00}-x{9fa5}]+/u

$str="账单123";
//GBK/GB2312使用:
preg_match_all("/[x80-xff]+/",$str,$chinese);
//UTF-8使用:
//preg_match_all("/[x{4e00}-x{9fa5}]+/u",$str,$chinese);
print_r($chinese);

阁下所说的乱码应该就是编码没弄对了

‘柒’ PHP正则表达式中怎么匹配汉字啊 - 技术问答

匹配中文字符的正则表达式:
[\\u4e00-\\u9fa5]匹配双字节字符(包括汉字在内):[^\\x00-\\xff]应用:计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)String.prototype.len=function(){return
this.replace([^\\x00-\\xff]/g,\"aa\").length;}匹配空行的正则表达式:\\n[\\s|
]*\\r匹配HTML标记的正则表达式:/.*|/匹配首尾空格的正则表达式:(^\\s*)|(\\s*$)

‘捌’ php正则匹配中文乱码问题

当然乱码啦,一个汉字在php里是三个字符,你这样直接用.去匹配任意字符的话,三个.才等于一个汉字。你把一个汉字给截取掉了,当然乱码了,不信你把你的0,10改成0,11。就不乱码的,而且只匹配出两个汉字。汉字不是这样去匹配的,有专门匹配汉字的正则,

‘玖’ php中如何用正则表达式匹配中文字符呢

php中匹配一个或多个中文字符(包含简体和繁体中文字符)的正则表达式如下:/[[b]\x{4e00}-\x{9fa5}]+/注意:php中正则表达式的16进制是以
\x
开头的。

‘拾’ php正则表达式匹配一段中文,中间有换行,空白,应该怎么写

有多种处理方法:

1、使用[sS]匹配任意字符,而不是使用“.”
2、使用s单行修饰模式,例:$pattern='#abc.*?def#s';//能匹配abc换行def
3、使用s*匹配换行和空格,php里s能匹配空白字符,含换行

php里的中文使用[x7f-xff]表示,因此,使用正则:

$pattern='#[x7f-xff]+(?:s*[x7f-xff]+)*#';即可

热点内容
随机启动脚本 发布:2025-07-05 16:10:30 浏览:517
微博数据库设计 发布:2025-07-05 15:30:55 浏览:20
linux485 发布:2025-07-05 14:38:28 浏览:299
php用的软件 发布:2025-07-05 14:06:22 浏览:751
没有权限访问计算机 发布:2025-07-05 13:29:11 浏览:428
javaweb开发教程视频教程 发布:2025-07-05 13:24:41 浏览:690
康师傅控流脚本破解 发布:2025-07-05 13:17:27 浏览:235
java的开发流程 发布:2025-07-05 12:45:11 浏览:681
怎么看内存卡配置 发布:2025-07-05 12:29:19 浏览:279
访问学者英文个人简历 发布:2025-07-05 12:29:17 浏览:828