当前位置:首页 » 编程语言 » php中文正则

php中文正则

发布时间: 2022-08-23 12:27:21

php中文正则表达式

preg_replace("/[^a-z\(0-9\)\x4e00-\x9fa5]+/ig", "", $data);

但你要保证输入的中文是Unicode, 不是全角的gb2312; 否则不能成功

㈡ 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正则匹配中文

在PHP里,包含数字、字母、下划线或中文的正则表达式如下:$pattern = "/[0-9a-zA-Z_\x80-\ff]+/";

㈣ PHP正则表达式验证是否含有中文

判断是否有中文。
if (preg_match("/[\x7f-\xff]/", $string)) { echo "true"; }else{ echo "false"; }判断是否全部是中文
//if (preg_match("/^[".chr(0xa1)."-".chr(0xff)."]+$/", $str)) { //只能在GB2312情况下使用 if (preg_match("/^[\x7f-\xff]+$/", $str)) { //兼容gb2312,utf-8
echo "true";
} else {
echo "false";
}
判断中文和编码有关 gbk是双字节,utf8是三字节,可以根据中文的范围来判断
编码范围1. GBK (GB2312/GB18030)
/x00-/xff GBK双字节编码范围
/x20-/x7f ASCII
/xa1-/xff 中文
/x80-/xff 中文
2. UTF-8 (Unicode)
/一-/龥 (中文)
/x3130-/x318F (韩文
/xAC00-/xD7A3 (韩文)
/u0800-/一 (日文)
ps: 韩文是大于[/龥]的字符
正则例子:
preg_replace("/([/x80-/xff])/","",$str);
preg_replace("/([一-龥])/","",$str);
希望可以采纳,谢谢。

㈤ PHP的正则表达式中使用中文(并匹配中文)的问题,原串为UTF8

<?php
$str = "中国势力是(烟消云散、再转在、匣介)中国、类别置顶帖(来哦见好就收)、炒肉可示、需要城";
$preg2 = "/中国/sim" ;
preg_match_all($preg2, $str, $strResult, PREG_PATTERN_ORDER);
print_r($strResult);
?>
我的PHP文件是UTF-8编码,不知道你的$str是从哪里得到的呢?像上面一样,我直接给$str赋值,这样使用 /中国/sim 这个表达式没有任何问题,会不会是你$str字符串的编码与页面编码不一致呢?

㈥ php正则判断字符串是否含有中文

functionchk_cn($str){
if(preg_match('|[x{4e00}-x{9fa5}]+?|u',$str)){
returntrue;
}
returnfalse;
}

调用这个 函数,返回true则是含有中文,false则无中文。

另外,x{4e00}-x{9fa5} 这个范围我也不太确定是不是包含所有的中文范围,没有认真研究它的取值范围。

㈦ 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正则表达式匹配一段中文,中间有换行,空白,应该怎么写

有多种处理方法:

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

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

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

㈨ PHP正则提取中文部分内容,怎么实现呀

中文可以用正则表达式进行匹配,但是具体匹配方法与中文的编码方式有关:


如果是GBK(GB2312、GB1080),那么中文的编码范围是:

x80-xff


如果是UTF-8编码,那么中文的编码范围是:

u4e00-u9fa5


那么匹配汉字的正则表达式可以是:

/[x7f-xff]+/

或者

/[u4e00-u9fa5]+/


例子代码,显示文件中的所有汉字(GBK编码):

<?php
$s=file_get_contents('1.txt');
if(preg_match_all('/[x7f-xff]+/',$s,$r)){
for($i=1;$i<count($r[0]);$i++)echo"$i ".$r[0][$i]." ";
}
?>

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

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

热点内容
蒙皮算法 发布:2025-01-18 12:57:53 浏览:549
常用的r语言编译器 发布:2025-01-18 12:55:05 浏览:199
同人志解压密码 发布:2025-01-18 12:55:05 浏览:876
qq密码不记得怎么办 发布:2025-01-18 12:48:22 浏览:448
安卓系统停用怎么办 发布:2025-01-18 12:35:49 浏览:260
五菱宏光星辰哪个配置最值得买 发布:2025-01-18 12:29:43 浏览:595
鸿蒙系统为什么完美兼容安卓应用 发布:2025-01-18 12:16:02 浏览:856
数分转算法 发布:2025-01-18 12:08:31 浏览:612
iphone硬件为什么比安卓更好 发布:2025-01-18 12:08:29 浏览:822
医院冷热源配置有哪些 发布:2025-01-18 12:08:26 浏览:167