我的字符串$ content中有许多URL:
<a href="https://domain/wp-content/uploads/2018/07/sample-Wokal-2.jpg"><img class="alignright size-full wp-image-6608" src="https://domain/wp-content/uploads/2018/07/sample-Wokal-2.jpg" alt="sample Wokal 2" width="933" height="617" /></a>
<a href="https://domain/wp-content/uploads/2014/01/sample-lato-123.jpg"><img class="alignright size-full wp-image-6608" src="https://domain/uploads/2014/01/sample-lato-123.jpg" alt="sample lato 123" width="933" height="617" /></a>
等
是否可以将所有链接替换为: -https://domain/files/sample-lato-123.jpg, -https://domain/files/sample-Wokal-2.jpg,
等吗?
该怎么做? 我尝试了str_replace-但是我有不同类型的链接,但我不知道如何替换它们。我不知道正则表达式:(
请帮助。
答案 0 :(得分:0)
您可以使用此正则表达式进行环顾,以确保需要替换的字符串确实是我们想要的字符串,
(?<=domain).*?(?=sample)
并替换为
/files/
这是示例PHP代码,
$str = '<a href="https://domain/wp-content/uploads/2018/07/sample-Wokal-2.jpg"><img class="alignright size-full wp-image-6608" src="https://domain/wp-content/uploads/2018/07/sample-Wokal-2.jpg" alt="sample Wokal 2" width="933" height="617" /></a>\n<a href="https://domain/wp-content/uploads/2014/01/sample-lato-123.jpg"><img class="alignright size-full wp-image-6608" src="https://domain/uploads/2014/01/sample-lato-123.jpg" alt="sample lato 123" width="933" height="617" /></a>';
echo preg_replace('/(?<=domain).*?(?=sample)/', '/files/', $str);
打印
<a href="https://domain/files/sample-Wokal-2.jpg"><img class="alignright size-full wp-image-6608" src="https://domain/files/sample-Wokal-2.jpg" alt="sample Wokal 2" width="933" height="617" /></a>\n<a href="https://domain/files/sample-lato-123.jpg"><img class="alignright size-full wp-image-6608" src="https://domain/files/sample-lato-123.jpg" alt="sample lato 123" width="933" height="617" /></a>
让我知道这是否适合您。