我想删除字符串中最后出现的网址
输入
祝一切顺利。 https://google.com/last
输出
祝一切顺利。
输入
谢谢你让我感动了300万。 https://google.com/first。这不是我的成就,而是你的爱。 https://google.com/second。永远感激https://google.com/last
输出
谢谢你让我感动了300万。 https://google.com/first。这不是我的成就,而是你的爱。 https://google.com/second。永远感激
答案 0 :(得分:1)
您可以尝试以下代码。
$str = "Thank you for making me touch 3 Million. https://google.com/first. It’s not MY achievement... it’s your LOVE. https://google.com/second. Gratitude forever https://google.com/last";
//$str = "Hey All the Best. https://google.com/last";
$p = "/(https?:\/\/[^\/]+(?:[\d\w\/\._]*)\s*)$/i";
$result = preg_replace($p, '', $str);
var_dump($result);
正则表达式中的'$'是最后一个匹配项,如果未添加'$',则所有链接都将被匹配。与此对应的是“ ^”,匹配开头。
答案 1 :(得分:0)
类似的事情会做:
https?://\S+(?!.*https?://\S+)