搜索
首页后端开发php教程求替换全局img图片的正则表达式

如题
现在有一字符串是

$content = '

求替换全局img图片的正则表达式求替换全局img图片的正则表达式test

';

想要将这字符里面的 images/tmp 都替换成 images/pub

本人已经写了一个函数
	public static function replace_img_publish_path($content){		$pattern='/(<[img|IMG].+src=\"?.+)(images\/tmp\/)(.+\.(jpg|gif|bmp|bnp|png)\"?.+>)/';		$replacement="\${1}images/pub/\${3}";		print  preg_replace($pattern, $replacement, $content);		exit;	}


输出结果为

求替换全局img图片的正则表达式求替换全局img图片的正则表达式test



只替换了最后一个img标签

如何才能全部都替换?


回复讨论(解决方案)

$content = '<p><img  src="/static/imghwm/default1.png"  data-src="http://localhost:8080/story/images/tmp/1403530150545.jpg"  class="lazy"     style="max-width:90%" alt="求替换全局img图片的正则表达式" ><img  src="/static/imghwm/default1.png"  data-src="http://localhost:8080/story/images/tmp/1403530147265.jpg"  class="lazy"     style="max-width:90%" alt="求替换全局img图片的正则表达式" >test</p>';$content = preg_replace('#(?<=src="http://localhost:8080/story/images/)tmp/#', 'pub/', $content);echo $content;

求替换全局img图片的正则表达式求替换全局img图片的正则表达式test


你没有防止贪婪匹配。

 $pattern='/()/';

你写的方法加一个参数U就可以了。
加上U,将懒惰匹配 变成 贪婪匹配。

$pattern='/()/ U';

测试例子:

$content = '<p><img  src="/static/imghwm/default1.png"  data-src="http://localhost:8080/story/images/tmp/1403530150545.jpg"  class="lazy"     style="max-width:90%" alt="求替换全局img图片的正则表达式" ><img  src="/static/imghwm/default1.png"  data-src="http://localhost:8080/story/images/tmp/1403530147265.jpg"  class="lazy"     style="max-width:90%" alt="求替换全局img图片的正则表达式" >test</p>';replace_img_publish_path($content);function replace_img_publish_path($content){    $pattern='/(<[img|IMG].+src=\"?.+)(images\/tmp\/)(.+\.(jpg|gif|bmp|bnp|png)\"?.+>)/U';    $replacement="\${1}images/pub/\${3}";    print  preg_replace($pattern, $replacement, $content);    exit;}


替换后:

求替换全局img图片的正则表达式求替换全局img图片的正则表达式test

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
5分钟掌握PyCharm替换快捷键,轻松提升编程速度!5分钟掌握PyCharm替换快捷键,轻松提升编程速度!Feb 22, 2024 am 10:57 AM

PyCharm是一款常用的Python集成开发环境,拥有丰富的功能和快捷键,能够帮助开发者提高编程效率。在日常的编程过程中,掌握PyCharm的替换快捷键技巧可以帮助开发者更快捷地完成任务。本文将为大家介绍PyCharm中一些常用的替换快捷键,帮助大家轻松提升编程速度。1.Ctrl+R替换在PyCharm中,可以使用Ctrl+R快捷键来进行替换操

使用java的StringBuilder.replace()函数替换指定范围的字符使用java的StringBuilder.replace()函数替换指定范围的字符Jul 24, 2023 pm 06:12 PM

使用java的StringBuilder.replace()函数替换指定范围的字符在Java中,StringBuilder类提供了replace()方法,可以用来替换字符串中指定范围的字符。该方法的语法如下:publicStringBuilderreplace(intstart,intend,Stringstr)上面的方法用于替换从索引star

PyCharm新手指南:替换功能全面解析PyCharm新手指南:替换功能全面解析Feb 25, 2024 am 11:15 AM

PyCharm是一款功能强大的Python集成开发环境,具有丰富的功能和工具,能够极大地提高开发效率。其中,替换功能是开发过程中经常用到的功能之一,能够帮助开发者快速修改代码并提高代码质量。本文将详细介绍PyCharm的替换功能,并结合具体的代码示例,帮助新手更好地掌握和使用该功能。替换功能简介PyCharm的替换功能可以帮助开发者在代码中快速替换指定的文本

使用jQuery替换元素的class名称使用jQuery替换元素的class名称Feb 24, 2024 pm 11:03 PM

jQuery是一种经典的JavaScript库,被广泛应用于网页开发中,它简化了在网页上处理事件、操作DOM元素和执行动画等操作。在使用jQuery时,经常会遇到需要替换元素的class名的情况,本文将介绍一些实用的方法,以及具体的代码示例。1.使用removeClass()和addClass()方法jQuery提供了removeClass()方法用于删除

MySQL中如何使用REPLACE函数替换字符串中的指定部分MySQL中如何使用REPLACE函数替换字符串中的指定部分Jul 25, 2023 pm 01:18 PM

MySQL是一种常用的关系型数据库管理系统,它提供了多种函数来处理和操作数据。其中,REPLACE函数是用来替换字符串中的指定部分内容的。在本文中,将介绍如何在MySQL中使用REPLACE函数进行字符串替换,并通过代码示例来演示其用法。首先,我们来了解一下REPLACE函数的语法:REPLACE(str,search_str,replace_str)其

PyCharm替换快捷键,让编程更得心应手!PyCharm替换快捷键,让编程更得心应手!Feb 21, 2024 pm 12:03 PM

PyCharm是一款广受程序员欢迎的集成开发环境,它提供了强大的功能和工具,让编程变得更加高效和便捷。而在PyCharm中,合理设置和替换快捷键是提高编程效率的关键之一。本文将介绍如何在PyCharm中替换快捷键,让编程更加得心应手。一、为什么要替换快捷键在PyCharm中,快捷键可以帮助程序员快速完成各种操作,提高编程效率。然而,每个人习惯不同,有些人可能

如何使用Python在Excel中替换一个单词?如何使用Python在Excel中替换一个单词?Sep 16, 2023 pm 10:21 PM

在Python中,我们可以使用一个名为openpyxl的第三方Python库将Excel中的一个单词替换为另一个单词。MicrosoftExcel是一个用于管理和分析数据的有用工具。使用Python,我们可以自动化一些Excel数据管理任务。在本文中,我们将了解如何使用Python在Excel中替换一个单词。安装openpyxl在Excel中替换Word之前,我们需要使用Python包管理器在系统中安装openpyxl库。要安装openpyxl,请在终端或命令提示符中输入以下命令。Pipinst

揭秘PyCharm中快速替换代码的方法揭秘PyCharm中快速替换代码的方法Feb 25, 2024 pm 11:21 PM

PyCharm是广受开发者喜爱的Python集成开发环境,它提供了许多快速替换代码的方法,让开发过程更加高效。本文将揭秘PyCharm中几种常用的快速替换代码的方法,并提供具体的代码示例,帮助开发者更好地利用这些功能。1.使用替换功能PyCharm提供了强大的替换功能,可以帮助开发者快速替换代码中的文本。通过快捷键Ctrl+R或者在编辑器中右键点击选择Re

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

功能强大的PHP集成开发环境

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

螳螂BT

螳螂BT

Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

Atom编辑器mac版下载

Atom编辑器mac版下载

最流行的的开源编辑器

mPDF

mPDF

mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),