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 相关文章推荐
《PHP边学边教》(01.开篇――准备工作)
Dec 13 PHP
ajax php 实现写入数据库
Sep 02 PHP
关于页面优化和伪静态
Oct 11 PHP
PHP采集利器 Snoopy 试用心得
Jul 03 PHP
php各种编码集详解和以及在什么情况下进行使用
Sep 11 PHP
phpmail类发送邮件函数代码
Feb 20 PHP
PHP常量使用的几个需要注意的地方(谨慎使用PHP中的常量)
Sep 12 PHP
PHP记录搜索引擎蜘蛛访问网站足迹的方法
Apr 15 PHP
基于php数组中的索引数组和关联数组详解
Mar 12 PHP
PHP添加文字水印或图片水印的水印类完整源代码与使用示例
Mar 18 PHP
在Laravel中使用MongoDB的方法示例
Nov 11 PHP
php计数排序算法的实现代码(附四个实例代码)
Mar 31 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
关于Yii中模型场景的一些简单介绍
2019/09/22 PHP
不能再简单的无闪刷新验证码原理很简单
2007/11/05 Javascript
checkbox全选/取消全选以及checkbox遍历jQuery实现代码
2009/12/02 Javascript
Jquery的hide及toggle方法让超链接慢慢消失
2013/09/06 Javascript
基于mouseout和mouseover等类似事件的冒泡问题解决方法
2013/11/18 Javascript
基于javascript的JSON格式页面展示美化方法
2014/07/02 Javascript
jQuery中hover方法和toggle方法使用指南
2015/02/27 Javascript
详解Node.js包的工程目录与NPM包管理器的使用
2016/02/16 Javascript
基于JSON格式数据的简单jQuery幻灯片插件(jquery-slider)
2016/08/10 Javascript
jQuery的Cookie封装,与PHP交互的简单实现
2016/10/05 Javascript
js仿iphone秒表功能 计算平均数
2017/01/11 Javascript
浅析node.js的模块加载机制
2018/05/25 Javascript
小程序指纹验证的实现代码
2018/12/04 Javascript
jQuery中each和js中forEach的区别分析
2019/02/27 jQuery
[01:55]《走出家门看比赛》——DOTA2 2015国际邀请赛同城线下观战
2015/07/18 DOTA
[01:02]DOTA2辉夜杯决赛日 CDEC.Y对阵VG赛前花絮
2015/12/27 DOTA
Python闭包实现计数器的方法
2015/05/05 Python
一文总结学习Python的14张思维导图
2017/10/17 Python
Python Flask框架扩展操作示例
2019/05/03 Python
python添加菜单图文讲解
2019/06/04 Python
python 在某.py文件中调用其他.py内的函数的方法
2019/06/25 Python
python实现大文本文件分割
2019/07/22 Python
Django 解决阿里云部署同步数据库报错的问题
2020/05/14 Python
Python基础教程(一)——Windows搭建开发Python开发环境
2020/07/20 Python
Canal官网:巴西女性时尚品牌
2019/10/16 全球购物
意大利单身交友网站:Meetic
2020/07/12 全球购物
.NET程序员的几道面试题
2012/06/01 面试题
高中政治教学反思
2014/01/18 职场文书
纺织工程专业个人求职信范文
2014/01/27 职场文书
财务总监岗位职责
2014/03/07 职场文书
新农村建设汇报材料
2014/08/15 职场文书
2014年环保工作总结
2014/11/26 职场文书
远程教育培训心得体会
2016/01/09 职场文书
幼儿园中班教学反思
2016/03/03 职场文书
不同品牌、不同型号对讲机如何互相通联
2022/02/18 无线电
pytest实现多进程与多线程运行超好用的插件
2022/07/15 Python