Home > php教程 > php手册 > php utf

php utf

WBOY
Release: 2016-06-06 19:58:11
Original
948 people have browsed it

首先unicode里面 中文的区域的0x4e00-0x9fa5 在java或者js这种已unicode编码处理字符串的编程语言中 /^[\u4e00-\u9fa5]$/就可以判断一个字符串是否全部为中文 那么php中 字符的编码根据页面而定 页面是gbk的 字符编码就是gbk的 utf-8也同理 之前有一个表达式

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

那么php中 字符的编码根据页面而定
页面是gbk的 字符编码就是gbk的 utf-8也同理
之前有一个表达式 “/^[\x80-\xff]+$/”
仅仅可以匹配是否含有非ascll字符
而汉字只是其中一个比较小的区域 不太精确

由于我的页面编码是utf-8的
于是把js的表达式搬到php中来
提示PCRE不支持”\u”和其他乱七八糟的一大堆东西

后来查资料了解到 php的正则有一种叫做字符组的东西
用\x{…}表示
于是把表达式改成”/^[\x{4e00}-\x{9fa5}]+$/”
又提示”\x”表达式后的数字太大

又查了资料 了解到可以使用修正模式”u” 让程序把后面当成unicode字符处理
于是改成了”/^[\x{4e00}-\x{9fa5}]+$/u” 测试成功

所以php下正则匹配中文的表达式是 “/^[\x{4e00}-\x{9fa5}]+$/u”
这个仅适用于utf-8编码

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Recommendations
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template