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 相关文章推荐
第七节--类的静态成员
Nov 16 PHP
网站用php实现paypal整合方法
Nov 28 PHP
php 传值赋值与引用赋值的区别
Dec 29 PHP
探讨Hessian在PHP中的使用分析
Jun 13 PHP
PHP验证码函数代码(简单实用)
Sep 29 PHP
2个Codeigniter文件批量上传控制器写法例子
Jul 25 PHP
php的XML文件解释类应用实例
Sep 22 PHP
ThinkPHP实现非标准名称数据表快速创建模型的方法
Nov 29 PHP
PHP版微信公众平台红包API
Apr 02 PHP
详解PHP归并排序的实现
Oct 18 PHP
php 运算符与表达式详细介绍
Nov 30 PHP
YII框架学习笔记之命名空间、操作响应与视图操作示例
Apr 30 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
在WordPress中使用wp-cron插件来设置定时任务
2015/12/10 PHP
PHP解压tar.gz格式文件的方法
2016/02/14 PHP
jquery 图片 上一张 下一张 链接效果(续篇)
2010/04/20 Javascript
javascript中对Attr(dom中属性)的操作示例讲解
2013/12/02 Javascript
jQuery的3种请求方式$.post,$.get,$.getJSON
2014/03/28 Javascript
JavaScript字符串对象split方法入门实例(用于把字符串分割成数组)
2014/10/16 Javascript
调试JavaScript中正则表达式中遇到的问题
2015/01/27 Javascript
BootStrap中Tab页签切换实例代码
2016/05/30 Javascript
JSONP跨域请求实例详解
2016/07/04 Javascript
vue.js+Element实现表格里的增删改查
2017/01/18 Javascript
AngularJS 验证码60秒倒计时功能的实现
2017/06/05 Javascript
详解React中的组件通信问题
2017/07/31 Javascript
vue综合组件间的通信详解
2017/11/06 Javascript
jQuery中常用动画效果函数知识点整理
2018/08/19 jQuery
vueScroll实现移动端下拉刷新、上拉加载
2019/03/22 Javascript
layui实现三级导航菜单
2019/07/26 Javascript
浅谈Vue3.0之前你必须知道的TypeScript实战技巧
2019/09/11 Javascript
解决layer弹出层msg的文字不显示的问题
2019/09/11 Javascript
python网络编程调用recv函数完整接收数据的三种方法
2017/03/31 Python
python树莓派红外反射传感器
2019/01/21 Python
Python 正则表达式爬虫使用案例解析
2019/09/23 Python
Python读写csv文件流程及异常解决
2020/10/20 Python
selenium框架中driver.close()和driver.quit()关闭浏览器
2020/12/08 Python
弄清Pytorch显存的分配机制
2020/12/10 Python
python matplotlib工具栏源码探析二之添加、删除内置工具项的案例
2021/02/25 Python
利用CSS3的flexbox实现水平垂直居中与三列等高布局
2016/09/12 HTML / CSS
外贸公司实习自我鉴定
2013/09/24 职场文书
金融管理专业毕业生求职信
2014/03/12 职场文书
入党自我鉴定
2014/03/25 职场文书
中介业务员岗位职责
2014/04/09 职场文书
实践单位评语
2014/04/26 职场文书
公司会议开幕词
2015/01/29 职场文书
感恩节寄语2015
2015/03/24 职场文书
2016五四青年节活动总结范文
2016/04/06 职场文书
Python 内置函数速查表一览
2021/06/02 Python
springboot新建项目pom.xml文件第一行报错的解决
2022/01/18 Java/Android