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面向对象全攻略 (六)__set() __get() __isset() __unset()的用法
Sep 30 PHP
php中time()与$_SERVER[REQUEST_TIME]用法区别
Nov 19 PHP
PHP图像处理之imagecreate、imagedestroy函数介绍
Nov 19 PHP
php获取QQ头像并显示的方法
Dec 23 PHP
PHP callback函数使用方法和注意事项
Jan 23 PHP
PHP+ajax分页实例简析
Dec 07 PHP
PHP实现的oracle分页函数实例
Jan 25 PHP
PHP 应用容器化以及部署方法
Feb 12 PHP
php strftime函数获取日期时间(switch用法)
May 16 PHP
PHP abstract 抽象类定义与用法示例
May 29 PHP
PHP 7.4 新语法之箭头函数实例详解
May 09 PHP
laravel 实现向公共模板中传值 (view composer)
Oct 22 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生成静态页面详解
2006/12/05 PHP
php使用Smarty的相关注意事项及访问变量的几种方式
2011/12/08 PHP
php防注入及开发安全详细解析
2013/08/09 PHP
PHP动态输出JavaScript代码实例
2015/02/12 PHP
简单谈谈PHP面向对象之标识对象
2017/06/27 PHP
Laravel配合jwt使用的方法实例
2020/10/25 PHP
js与jquery中获取当前鼠标的x、y坐标位置的代码
2011/05/23 Javascript
jQuery中filter()和find()的区别深入了解
2013/09/25 Javascript
简单的Jquery遮罩层代码实例
2013/11/14 Javascript
使用微信内置浏览器点击下拉框出现页面乱跳转现象(iphone),该怎么办
2016/01/04 Javascript
jQuery自定义滚动条完整实例
2016/01/08 Javascript
深入浅析JavaScript中的3DES
2016/08/24 Javascript
AngularJS双向数据绑定原理之$watch、$apply和$digest的应用
2018/01/30 Javascript
JS实现获取数组中最大值或最小值功能示例
2019/03/02 Javascript
跟老齐学Python之编写类之一创建实例
2014/10/11 Python
Python实现将一个大文件按段落分隔为多个小文件的简单操作方法
2017/04/17 Python
python面向对象实现名片管理系统文件版
2019/04/26 Python
Python PyCharm如何进行断点调试
2019/07/05 Python
python如何保证输入键入数字的方法
2019/08/23 Python
python读取ini配置文件过程示范
2019/12/23 Python
Python 如何批量更新已安装的库
2020/05/26 Python
Python使用shutil模块实现文件拷贝
2020/07/31 Python
如何从csv文件构建Tensorflow的数据集
2020/09/21 Python
详解HTML5 canvas绘图基本使用方法
2018/01/29 HTML / CSS
草莓网化妆品日本站:Strawberrynet日本
2017/10/20 全球购物
老公爱的承诺书
2014/03/31 职场文书
小学生新年寄语
2014/04/03 职场文书
机关办公室岗位职责
2014/04/16 职场文书
幼儿园爱国卫生月活动总结
2014/06/30 职场文书
学雷锋献爱心倡议书
2015/04/27 职场文书
uniapp开发小程序的经验总结
2021/04/08 Javascript
python实现Thrift服务端的方法
2021/04/20 Python
Go标准容器之Ring的使用说明
2021/05/05 Golang
python基础之文件处理知识总结
2021/05/23 Python
Python作用域和名称空间的详细介绍
2022/04/13 Python
Linux在两个服务器直接传文件的操作方法
2022/08/05 Servers