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 相关文章推荐
smarty实例教程
Nov 19 PHP
PHP5.2下chunk_split()函数整数溢出漏洞 分析
Jun 06 PHP
新安装的MySQL数据库需要注意的安全知识
Jul 30 PHP
PHP 压缩文件夹的类代码
Nov 05 PHP
PHP写UltraEdit插件脚本实现方法
Dec 26 PHP
php class中public,private,protected的区别以及实例分析
Jun 18 PHP
基于PHP+Ajax实现表单验证的详解
Jun 25 PHP
CodeIgniter CLI模式简介
Jun 17 PHP
Symfony2之session与cookie用法小结
Mar 18 PHP
PHP使用xpath解析XML的方法详解
May 20 PHP
PHP异常处理定义与使用方法分析
Jul 25 PHP
PHP数据源架构模式之表入口模式实例分析
Jan 23 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
为PHP5.4开启Zend OPCode缓存
2014/12/26 PHP
php随机生成数字字母组合的方法
2015/03/18 PHP
Symfony模板的快捷变量用法实例
2016/03/17 PHP
PHP+Ajax 检测网络是否正常实例详解
2016/12/16 PHP
浅谈laravel 5.6 安装 windows上使用composer的安装过程
2019/10/18 PHP
点击广告后才能获得下载地址
2006/10/26 Javascript
js+CSS 图片等比缩小并垂直居中实现代码
2008/12/01 Javascript
JavaScript学习历程和心得小结
2010/08/16 Javascript
cookie 最近浏览记录(中文escape转码)具体实现
2013/06/08 Javascript
解决js数据包含加号+通过ajax传到后台时出现连接错误
2013/08/01 Javascript
jQuery简单几行代码实现tab切换
2015/03/10 Javascript
基于Vue.js的表格分页组件
2016/05/22 Javascript
浅谈angular2 组件的生命周期钩子
2017/08/12 Javascript
Angular2.0/4.0 使用Echarts图表的示例代码
2017/12/07 Javascript
Vue render深入开发讲解
2018/04/13 Javascript
基于node.js实现爬虫的讲解
2019/02/18 Javascript
Vue如何实现监听组件原生事件
2020/07/03 Javascript
vue中全局路由守卫中替代this操作(this.$store/this.$vux)
2020/07/24 Javascript
Vue实现导航栏菜单
2020/08/19 Javascript
vue实现移动端拖动排序
2020/08/21 Javascript
python删除指定类型(或非指定)的文件实例详解
2015/07/06 Python
理解python正则表达式
2016/01/15 Python
TensorFlow神经网络优化策略学习
2018/03/09 Python
Python解决走迷宫问题算法示例
2018/07/27 Python
Python异常的检测和处理方法
2018/10/26 Python
Python使用pandas对数据进行差分运算的方法
2018/12/22 Python
keras 获取某层输出 获取复用层的多次输出实例
2020/05/23 Python
css3实现3D色子翻转特效
2014/12/23 HTML / CSS
学校办公室主任职责
2013/12/27 职场文书
煤矿安全承诺书
2014/05/22 职场文书
财务负责人任命书
2014/06/06 职场文书
材料采购员岗位职责
2015/04/03 职场文书
《世界多美呀》教学反思
2016/02/22 职场文书
写给消防战士们的一封慰问信
2019/10/07 职场文书
mysql知识点整理
2021/04/05 MySQL
Django基础CBV装饰器和中间件
2022/03/22 Python