专栏首页信数据得永生php utf-8编码 正则匹配中文

php 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编码

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 米斯特白帽培训讲义(v2)漏洞篇 XSS

    跨站脚本攻击(Cross Site Scripting),为不和层叠样式表(Cascading Style Sheets,CSS)的缩写混淆,故将跨站脚本攻击缩...

    ApacheCN_飞龙
  • php取到的时间总是差8小时的解决方法

    从php5.1开始,在设置文件”php.ini”里面有一项叫做”date.timezone”,可以设置服务器所在的时区。刚安装的php此项应该是注释掉的,这种...

    ApacheCN_飞龙
  • PHP编写shell

    这周无聊了研究了点小东西 既然py可以当shell用 那么php能不能也这样用呢? php的目录底下有解释器 早就注意到了 那么他就可以像py那样来用了 ...

    ApacheCN_飞龙
  • 基础知识 | 每日一面(20)

    读者:可是&& 和|| 运算符呢?我看到过类似while((c = getchar())

    闫小林
  • 根据乱码分析编码错误原因

    原文链接:https://www.cnblogs.com/shendandan/p/4766840.html

    大菊观
  • Spring4.0MVC学习资料,简单学习教程(一)

    Spring框架的核心部分就是Ioc容器,而Ioc控制的就是各种Bean,一个Spring项目的水平往往从其XML配置文件内容就能略知一二,很多项目,往往是外包...

    业余草
  • WPF 源代码 从零开始写一个 UI 框架

    需要知道 WPF 是一个 UI 框架,作为一个 UI 框架,最主要的就是交互。也就是 UI 框架需要有渲染显示和处理用户输入的功能。 如果直接告诉大家 WPF ...

    林德熙
  • 定制带RAID阵列卡驱动的WINPE3.0系统

           最近一个朋友的服务器出现了问题,经了解他的服务器是组装的,且配置了RAID5阵列,目前无法正常启动系统,且中间一盘电源系统掉了,对数据进行了损坏,...

    木子-Lee
  • 多云战略的经验教训

    Intrado公司首席技术官Thomas Squeo日前分享了使用多云服务以及克服内部阻力的智慧。

    静一
  • 【腾讯云的1001种玩法】十分钟轻松搞定云架构之三:更大的存储

    通过本文,我们来了解下面这个四个方面:应用发展过程中不可避免的存储问题、什么是对象存储 、对象存储的优势、对象存储的最佳实践。

    白宦成

扫码关注云+社区

领取腾讯云代金券