php preg_filter执行一个正则表达式搜索和替换


Posted in PHP onFebruary 27, 2012

preg_filter
(PHP 5 >= 5.3.0)

preg_filter — 执行一个正则表达式搜索和替换
mixed preg_filter ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit = -1 [, int &$count ]] )
preg_filter()等价于preg_replace() 除了它仅仅返回(可能经过转化)与目标匹配的结果. 这个函数怎样工作的更详细信息请阅读 preg_replace()文档.

返回值
如果subject是一个数组, 返回一个数组, 其他情况返回一个字符串.

如果没有找到匹配或者发生了错误, 当subject是数组 时返回一个空数组, 其他情况返回NULL.

范例

Example #1 比较preg_filter() 和preg_replace()的示例

<?php 
$subject = array('1', 'a', '2', 'b', '3', 'A', 'B', '4'); 
$pattern = array('/\d/', '/[a-z]/', '/[1a]/'); 
$replace = array('A:$0', 'B:$0', 'C:$0'); echo "preg_filter returns\n"; 
print_r(preg_filter($pattern, $replace, $subject)); 
echo "preg_replace returns\n"; 
print_r(preg_replace($pattern, $replace, $subject)); 
?>

以上例程会输出:
preg_filter returns 
Array 
( 
[0] => A:C:1 
[1] => B:C:a 
[2] => A:2 
[3] => B:b 
[4] => A:3 
[7] => A:4 
) 
preg_replace returns 
Array 
( 
[0] => A:C:1 
[1] => B:C:a 
[2] => A:2 
[3] => B:b 
[4] => A:3 
[5] => A 
[6] => B 
[7] => A:4 
)

  • PCRE Patterns
  • preg_replace() - 执行一个正则表达式的搜索和替换
  • preg_replace_callback() - 执行一个正则表达式搜索并且使用一个回调进行替换
  • preg_grep() - 返回匹配模式的数组条目
  • preg_last_error() - 返回最后一个PCRE正则执行产生的错误代码
PHP 相关文章推荐
如何将一个表单同时提交到两个地方处理
Oct 09 PHP
PHP大批量数据操作时临时调整内存与执行时间的方法
Apr 20 PHP
PHP调用C#开发的dll类库方法
Jul 28 PHP
php中$_POST与php://input的区别实例分析
Jan 07 PHP
Zend Guard使用指南及问题处理
Jan 07 PHP
PHP实现将视频转成MP4并获取视频预览图的方法
Mar 12 PHP
php格式化电话号码的方法
Apr 24 PHP
thinkPHP下ueditor的使用方法详解
Dec 26 PHP
各种快递查询--Api接口
Apr 26 PHP
php while循环控制的简单实例
May 30 PHP
PHP生成图像验证码的方法小结(2种方法)
Jul 18 PHP
thinkPHP简单导入和使用阿里云OSSsdk的方法
Mar 15 PHP
mysql总结之explain
Feb 27 #PHP
php&amp;mysql 日期操作小记
Feb 27 #PHP
MySQL时间字段究竟使用INT还是DateTime的说明
Feb 27 #PHP
php explode函数实例代码
Feb 27 #PHP
PHP中获取文件扩展名的N种方法小结
Feb 27 #PHP
PHP中的正则表达式函数介绍
Feb 27 #PHP
支持中文字母数字、自定义字体php验证码代码
Feb 27 #PHP
You might like
php通过array_merge()函数合并关联和非关联数组的方法
2015/03/18 PHP
PHP文件操作详解
2016/12/30 PHP
[IE&amp;FireFox兼容]JS对select操作
2007/01/07 Javascript
JS提交并解析后台返回的XML的代码
2008/11/03 Javascript
node.js中的fs.writeFile方法使用说明
2014/12/14 Javascript
angularJS 入门基础
2015/02/09 Javascript
简介JavaScript中的sub()方法的使用
2015/06/08 Javascript
JavaScript中的pow()方法使用详解
2015/06/15 Javascript
AngularJS  ng-table插件设置排序
2016/09/21 Javascript
js实现的光标位置工具函数示例
2016/10/03 Javascript
underscore之Chaining_动力节点Java学院整理
2017/07/10 Javascript
react中的ajax封装实例详解
2017/10/17 Javascript
JS使用setInterval实现的简单计时器功能示例
2018/04/19 Javascript
vue props对象validator自定义函数实例
2019/11/13 Javascript
vue中使用elementUI组件手动上传图片功能
2019/12/13 Javascript
优化Vue中date format的性能详解
2020/01/13 Javascript
浅谈鸿蒙 JavaScript GUI 技术栈
2020/09/17 Javascript
[06:04]DOTA2国际邀请赛纪录片:Just For LGD
2013/08/11 DOTA
[01:08:17]2018DOTA2亚洲邀请赛3月29日 小组赛B组 EG VS VGJ.T
2018/03/30 DOTA
Python 2.7.x 和 3.x 版本的重要区别小结
2014/11/28 Python
神经网络python源码分享
2017/12/15 Python
python3 读写文件换行符的方法
2018/04/09 Python
django+echart绘制曲线图的方法示例
2018/11/26 Python
Python生成验证码、计算具体日期是一年中的第几天实例代码详解
2019/10/16 Python
解决Python二维数组赋值问题
2019/11/28 Python
Python代码注释规范代码实例解析
2020/08/14 Python
ASP.NET Core中的配置详解
2021/02/05 Python
HTML5资源预加载(Link prefetch)详细介绍(给你的网页加速)
2014/05/07 HTML / CSS
ALEX AND ANI:手镯,项链,耳环和更多
2017/04/20 全球购物
澳洲小众品牌的集合网站:BNKR
2018/02/23 全球购物
毕业生的自我鉴定该怎么写
2013/12/02 职场文书
院领导写的就业推荐信
2014/03/09 职场文书
银行求职信范文
2014/05/26 职场文书
党支部意见范文
2015/06/02 职场文书
React Native项目框架搭建的一些心得体会
2021/05/28 Javascript
Django Paginator分页器的使用示例
2021/06/23 Python