PHP使用preg_split()分割特殊字符(元字符等)的方法分析


Posted in PHP onFebruary 04, 2017

本文实例讲述了PHP使用preg_split()分割特殊字符(元字符等)的方法。分享给大家供大家参考,具体如下:

这里所说的特殊字符就是正则中使用的特殊字符,如: | . + 等

其它的先不说,来个实例:

$pattern="/[,-\\|\\.]/";
$subject="aaa,bbb,ccc-ddd-eee-fff|ggg|hhh.iii.jjj.kkk";
$spr=preg_split($pattern, $subject);
print_r($spr);

结果:

Array ( [0] => [1] => [2] => [3] => [4] => [5] => [6] => [7] => [8] => [9] => [10] => [11] => [12] => [13] => [14] => [15] => [16] => [17] => [18] => [19] => [20] => [21] => [22] => [23] => [24] => [25] => [26] => [27] => [28] => [29] => [30] => [31] => [32] => [33] => [34] => [35] => [36] => [37] => [38] => [39] => [40] => [41] => [42] => [43] => )

很显然,这不是我们想要的结果,郁闷了好一会,才找到是什么原因:

把正则表达式内的特殊字符放到前面就没事了, 也就是

$pattern="/[\\|\\.,-]/";

结果:

Array ( [0] => aaa [1] => bbb [2] => ccc [3] => ddd [4] => eee [5] => fff [6] => ggg [7] => hhh [8] => iii [9] => jjj [10] => kkk )

好了,这就是我们要的结果了

总结:当使用正则表达式中的元字符,普通字符进行 [ ]内的多个字符分割的时候,要把待转义的元字符放在前面.

PHP 相关文章推荐
使用 php4 加速 web 传输
Oct 09 PHP
Thinkphp模板中使用自定义函数的方法
Sep 23 PHP
关于更改Zend Studio/Eclipse代码风格主题的介绍
Jun 23 PHP
smarty获得当前url的方法分享
Feb 14 PHP
Codeigniter出现错误提示Error with CACHE directory的解决方案
Jun 12 PHP
Apache启动报错No space left on device: AH00023该怎么解决
Oct 16 PHP
编写PHP脚本清除WordPress头部冗余代码的方法讲解
Mar 01 PHP
Yii2实现增删改查后留在当前页的方法详解
Jan 13 PHP
PHP实现的随机红包算法示例
Aug 14 PHP
Laravel框架执行原生SQL语句及使用paginate分页的方法
Aug 17 PHP
PHP中上传文件打印错误错误类型分析
Apr 14 PHP
PHP解决高并发问题
Apr 01 PHP
用PHP的socket实现客户端到服务端的通信实例详解
Feb 04 #PHP
关于PHP内置的字符串处理函数详解
Feb 04 #PHP
详谈PHP面向对象中常用的关键字和魔术方法
Feb 04 #PHP
浅谈PHP中的错误处理和异常处理
Feb 04 #PHP
详谈PHP中的密码安全性Password Hashing
Feb 04 #PHP
php、mysql查询当天,查询本周,查询本月的数据实例(字段是时间戳)
Feb 04 #PHP
PHP水印类,支持添加图片、文字、填充颜色区域的实现
Feb 04 #PHP
You might like
新版PHP极大的增强功能和性能
2006/10/09 PHP
php5.5中类级别的常量使用介绍
2013/10/02 PHP
PHP合并静态文件详解
2014/11/14 PHP
php绘制一个扇形的方法
2015/01/24 PHP
PHP中开启gzip压缩的2种方法
2015/01/31 PHP
分享PHP守护进程类
2015/12/30 PHP
js+xml生成级联下拉框代码
2012/07/24 Javascript
Extjs中TabPane如何嵌套在其他网页中实现思路及代码
2013/01/27 Javascript
jQuery表单获取和失去焦点输入框提示效果的实例代码
2013/08/01 Javascript
jquery增加时编辑jqGrid(实例代码)
2013/11/08 Javascript
ext combobox动态加载数据库数据(附前后台)
2014/06/17 Javascript
jQuery动态加载css文件实现方法
2016/06/15 Javascript
vue轮播组件实现$children和$parent 附带好用的gif录制工具
2019/09/26 Javascript
nodejs对mongodb数据库的增加修删该查实例代码
2020/01/05 NodeJs
[05:45]Ti4观战指南(下)
2014/07/07 DOTA
详解Python 数据库 (sqlite3)应用
2016/12/07 Python
Python 转义字符详细介绍
2017/03/21 Python
Python编程求解二叉树中和为某一值的路径代码示例
2018/01/04 Python
python自动登录12306并自动点击验证码完成登录的实现源代码
2018/04/25 Python
在python tkinter中Canvas实现进度条显示的方法
2019/06/14 Python
python爬虫刷访问量 2019 7月
2019/08/01 Python
tensorflow之读取jpg图像长和宽实例
2020/06/18 Python
美国首屈一指的礼品篮供应商:GiftTree
2018/01/06 全球购物
西班牙著名的珠宝首饰品牌:P D PAOLA
2018/09/15 全球购物
应届大学生自荐信格式
2013/09/21 职场文书
学校卫生检查制度
2014/02/03 职场文书
宣传保护环境的公益广告词
2014/03/13 职场文书
领导班子对照检查剖析材料
2014/10/13 职场文书
2014年社区卫生工作总结
2014/12/18 职场文书
测量员岗位职责
2015/02/14 职场文书
2015上半年个人工作总结
2015/07/27 职场文书
中小学教师继续教育心得体会
2016/01/19 职场文书
详解nodejs内置模块
2021/05/06 NodeJs
Pytorch数据读取之Dataset和DataLoader知识总结
2021/05/23 Python
详细聊聊vue中组件的props属性
2021/11/02 Vue.js
Spring IOC容器Bean的作用域及生命周期实例
2022/05/30 Java/Android