Rumah > pembangunan bahagian belakang > masalah PHP > 详细介绍PHP中preg_filter()与preg_replace()的区别

详细介绍PHP中preg_filter()与preg_replace()的区别

醉折花枝作酒筹
Lepaskan: 2023-03-11 08:50:01
ke hadapan
2301 orang telah melayarinya

在php中,我们知道正则表达式过滤函数有两个,分别是preg_filter()与preg_replace(),但是不一定所有人都知道他们之间的区别在哪里。今天小编就带大家一起来了解一下。

详细介绍PHP中preg_filter()与preg_replace()的区别

PHP正则替换过滤函数

怎么说呢 正则替换过滤函数 跟先前我们说的替换函数很类似 ,就只有一点点的小区分 不知道大家发现没有!!

==preg_filter()==函数: 执行一个正则表达式搜索和替换

通常情况下preg_filter()函数等价于preg_replace()函数

案例1代码如下:

$arr=array('1.jpg','2.txt','3.doc','4.exe','5.php');
$pattern='/\.jpg|\.txt/';$replacement='';
$result1=preg_replace($pattern, $replacement, $arr);
$result2=preg_filter($pattern, $replacement, $arr);
show($result2);
Salin selepas log masuk

preg_filter()和preg_replace()的实际区别

案例2代码如下:

$pattern=array(
    "/\d+/",
    "/ccc/");
$replacement=array(
    '1024',
    'PHP');
$string=array(
    '1234aaa',
    'abbbccc',
    'wampserver');
  $result1=preg_replace($pattern, $replacement, $string);
  show($result1);
  $result2=preg_filter($pattern, $replacement, $string);
  show($result2);
Salin selepas log masuk

所以区别如下:

preg_filter()只会返回发生替换过滤后的数组元素,而没有替换的数组元素没有返回

preg_replace() 返回的不仅是发生替换过滤后的数组元素,并且没有发生替换的元素也会保留下来并且返回!

其实大家只要一测试打印 出彼此的结果 就可以马上知道相互之间的区别了 !

推荐学习:php视频教程

Atas ialah kandungan terperinci 详细介绍PHP中preg_filter()与preg_replace()的区别. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:imooc.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan