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 相关文章推荐
PHP 开源AJAX框架14种
Aug 24 PHP
基于PHP遍历数组的方法汇总分析
Jun 08 PHP
php自动识别文件编码并转换为UTF-8的方法
Jun 12 PHP
重新认识php array_merge函数
Aug 31 PHP
WordPress自定义时间显示格式
Mar 27 PHP
php读取der格式证书乱码解决方法
Jun 22 PHP
php邮箱地址正则表达式验证
Nov 13 PHP
PHP结合Jquery和ajax实现瀑布流特效
Jan 07 PHP
php下载文件超时时间的设置方法
Oct 06 PHP
redirect_uri参数错误的解决方法(必看)
Feb 16 PHP
PHP验证码无法显示的原因及解决办法
Aug 11 PHP
Laravel 实现添加多语言提示信息
Oct 25 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文件上传表单摘自drupal的代码
2011/02/15 PHP
介绍一些PHP判断变量的函数
2012/04/24 PHP
PHP命名空间(Namespace)的使用详解
2013/05/04 PHP
CURL的学习和应用(附多线程实现)
2013/06/03 PHP
php获取当前月与上个月月初及月末时间戳的方法
2016/12/05 PHP
PHP微信发送推送消息乱码的解决方法
2019/02/28 PHP
JS按位非(~)运算符与~~运算符的理解分析
2011/07/31 Javascript
JavaScript将数字转换成大写中文的方法
2015/03/23 Javascript
基于jQuery实现拖拽图标到回收站并删除功能
2015/11/25 Javascript
js实现(全选)多选按钮的方法【附实例】
2016/03/30 Javascript
jQuery实现的导航动画效果(附demo源码)
2016/04/01 Javascript
JS判断日期格式是否合法的简单实例
2016/07/11 Javascript
JS设置CSS样式的方式汇总
2017/01/21 Javascript
Angular2入门教程之模块和组件详解
2017/05/28 Javascript
代码详解JS操作剪贴板
2018/02/11 Javascript
基于Bootstrap和JQuery实现动态打开和关闭tab页的实例代码
2019/06/10 jQuery
Async/Await替代Promise的6个理由
2019/06/15 Javascript
解决layui轮播图有数据不显示的情况
2019/09/16 Javascript
vue和iview实现Scroll 数据无限滚动功能
2019/10/31 Javascript
jquery更改元素属性attr()方法操作示例
2020/05/22 jQuery
解决Vue中的生命周期beforeDestory不触发的问题
2020/07/21 Javascript
vue设置默认首页的操作
2020/08/12 Javascript
js+h5 canvas实现图片验证码
2020/10/11 Javascript
[09:33]2015国际邀请赛第四日TOP10
2015/08/08 DOTA
python+selenium识别验证码并登录的示例代码
2017/12/21 Python
利用python打开摄像头及颜色检测方法
2018/08/03 Python
numpy中loadtxt 的用法详解
2018/08/03 Python
Python读取txt内容写入xls格式excel中的方法
2018/10/11 Python
python3 打印输出字典中特定的某个key的方法示例
2019/07/06 Python
Python实现串口通信(pyserial)过程解析
2019/09/25 Python
哈利波特商店:Harry Potter Shop
2018/11/30 全球购物
小组名称和口号
2014/06/09 职场文书
文明礼仪标语
2014/06/13 职场文书
劳动保障个人工作总结
2015/03/04 职场文书
2016父亲节感恩话语
2015/12/09 职场文书
Redis sentinel哨兵集群的实现步骤
2022/07/15 Redis