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
Dec 23 PHP
php 魔术方法使用说明
Oct 20 PHP
简单的移动设备检测PHP脚本代码
Feb 19 PHP
PHP操作数组的一些函数整理介绍
Jul 17 PHP
PHP 文本文章分页代码 按标记或长度(不涉及数据库)
Jun 07 PHP
深入PHP变量存储的详解
Jun 13 PHP
php防止伪造的数据从URL提交方法
Jun 27 PHP
PHP学习笔记(一) 简单了解PHP
Aug 04 PHP
PHP获取数组中重复最多的元素的实现方法
Nov 11 PHP
PHP设计模式之装饰器模式实例详解
Feb 07 PHP
PHP下载文件函数与用法示例
Sep 27 PHP
Laravel解决nesting level错误和隐藏index.php的问题
Oct 12 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
星际玩家的三大定律
2020/03/04 星际争霸
剧场版动画《PSYCHO-PASS 3 FIRST INSPECTOR》3月27日日本上映!
2020/03/06 日漫
php中根据某年第几天计算出日期年月日的代码
2011/02/24 PHP
在PHP中设置、使用、删除Cookie的解决方法
2013/05/06 PHP
配置Nginx+PHP的正确思路与过程
2016/05/10 PHP
PHP时间日期增减操作示例【date strtotime实现加一天、加一月等操作】
2018/12/21 PHP
自己开发Dojo的建议框架
2008/09/24 Javascript
js浮动图片的动态效果
2013/07/10 Javascript
JS创建自定义表格具体实现
2014/02/11 Javascript
javascript检测两个数组是否相似
2015/05/19 Javascript
JS简单限制textarea内输入字符数量的方法
2015/10/14 Javascript
jQuery实用技巧必备(上)
2015/11/02 Javascript
JQuery DIV 动态隐藏和显示的方法
2016/06/23 Javascript
JS控制div跳转到指定的位置的几种解决方案总结
2016/11/05 Javascript
JS数组搜索之折半搜索实现方法分析
2017/03/27 Javascript
自定义PC微信扫码登录样式写法
2017/12/12 Javascript
微信小程序实现弹出菜单
2018/07/19 Javascript
mpvue中使用flyjs全局拦截的实现代码
2018/09/13 Javascript
bootstrap table列和表头对不齐的解决方法
2019/07/19 Javascript
Angular8 简单表单验证的实现示例
2020/06/03 Javascript
[07:54]DOTA2 MV《我的动力鞋》 ImbaTV 出品
2014/11/21 DOTA
[00:48]DOTA2国际邀请赛公开赛报名开始 扫码开启逐梦之旅
2018/06/06 DOTA
[50:34]VGJ.T vs Fnatic 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
详细解析Python当中的数据类型和变量
2015/04/25 Python
Python基于更相减损术实现求解最大公约数的方法
2018/04/04 Python
详解Python安装tesserocr遇到的各种问题及解决办法
2019/03/07 Python
利用python实现PSO算法优化二元函数
2019/11/13 Python
python解析多层json操作示例
2019/12/30 Python
Pycharm远程连接服务器并实现代码同步上传更新功能
2020/02/25 Python
Scrapy模拟登录赶集网的实现代码
2020/07/07 Python
慕尼黑山地运动、户外服装和体育用品专家:Sporthaus Schuster
2019/08/27 全球购物
瑞士男士时尚网上商店:Babista
2020/05/14 全球购物
大学军训感言600字
2014/02/25 职场文书
根叔历年演讲稿
2014/05/20 职场文书
物流管理系毕业生求职信
2014/06/03 职场文书
城市规划应届生推荐信
2014/09/08 职场文书