PHP 正则表达式匹配中文字符
2023-09-11 14:17:03 时间
例如在 MySQL 的 bin-log 文件中选取特定的数据库语句来恢复数据时,只要选出某个库的 INSERT INTO 操作(去掉了多余信息,只列出 SQL 语句)
INSERT INTO `crm_member` (`id`,`name`) values (1,'甄士隐') INSERT INTO `app_member` (`id`,`name`) values (2,'dee') INSERT INTO `crm_member` (`id`,`name`) values (3,'emperor') INSERT INTO `crm_member` (`id`,`name`) values (4,'贾雨村')
只想选出 crm_member 表的 insert 操作时,可以使用 perg_match_all 函数
<?php header('Content-type:text/html;charset=utf-8'); $content = "INSERT INTO `crm_member` (`id`,`name`) values (1,'甄士隐') INSERT INTO `app_member` (`id`,`name`) values (2,'dee') INSERT INTO `crm_member` (`id`,`name`) values (3,'emperor') INSERT INTO `crm_member` (`id`,`name`) values (4,'贾雨村') "; preg_match_all('/INSERT INTO `crm_member[ -~\x{4e00}-\x{9fa5}]+/u', $content, $matches); $str = implode(";\r\n", $matches[0]); echo $str;
浏览器右键查看源代码查看输出的结果:
INSERT INTO `crm_member` (`id`,`name`) values (1,'甄士隐'); INSERT INTO `crm_member` (`id`,`name`) values (3,'emperor'); INSERT INTO `crm_member` (`id`,`name`) values (4,'贾雨村')
说明:
模式修饰符 /u:
此修正符打开一个与perl不兼容的附加功能.
模式字符串被认为是utf-8的.
这个修饰符 从unix版php 4.1.0或更高, win32版php 4.2.3开始可用.
php 4.3.5开始检查模式的utf-8合法性.
This modifier turns on additional functionality of PCRE that is incompatible with Perl.
Pattern strings are treated as UTF-8.
This modifier is available from PHP 4.1.0 or greater on Unix and from PHP 4.2.3 on win32.
UTF-8 validity of the pattern is checked since PHP 4.3.5.
(参考:PHP正则表达式 /i, /s, /x,/u, /U, /A, /D, /S等模式修饰符)
[\x{4e00}-\x{9fa5}]
代表匹配中文
相关文章
- php使用gd库输出中文内容的图片
- 配置php.ini实现PHP文件上传功能
- PHP如何将中文转英文
- PHP Socket编程 之 php cc攻击代码与防范方法
- PHP 框架 Hyperf 实现处理超时未支付订单和延时队列
- php+tcpdf生成pdf: 中文乱码
- php Date()函数输出中文年月日时分秒
- 以源码编译的方式安装PHP与php-fpm
- php:用数组实现多语言(PHP 7.4.2)
- php EventManager Module
- php日期格式转换
- mysql php nginx 源码包下载地址
- php:在linux上用sudo提升权限(centos 8 / PHP 7.4.2)
- php 36进制与10进制转换
- Relearning PHP (2) – php 的浮点数float
- 使用Discuz关键词服务器实现PHP中文分词
- Atitit 深入理解命名空间namespace java c# php js
- Atitit.面向接口的web 原理与设计重写 路由启动绑定配置url router rewriting urlpage mvc mvp的 java c#.net php js
- atitit.http get post的原理以及框架实现java php
- Stimulsoft Dashboards.PHP 2022.4.3 Crack
- PHP 5 MySQLi 函数
- PHP面试题:请说明 PHP 中传值与传引用的区别。什么时候传值什么时候传引用?
- php去除换行符的方法小结(PHP_EOL变量的使用)