我有一个文本文件,其中有很多像这样的 url http://96.156.138.108/i/01/00382/gbixtksl4n0p0000.jpg#xywh=0,0,108,60
我想用我的网址更改所有网址 http://testing.to/testing/vtt/vt1.vtt#xywh=0,0,108,60
我正在使用这个正则表达式
$result = preg_replace('"\b(https?://\S+)"', 'http://testing.to/testing/vtt/vt1.vtt', $result);
但它不能很好地改变整个 url
来自这个http://96.156.138.108/i/01/00382/gbixtksl4n0p0000.jpg#xywh=0,0,108,60
到这个http://testing.to/testing/vtt/vt1.vtt
除了 #xywh==0,0,108,60 之外,我只想更改 url
最佳答案
您可以使用 [^\s#]
而不是 \S
来匹配非空格、非 #
字符:
$result = preg_replace(
'"\bhttps?://[^\s#]+"',
'http://testing.to/testing/vtt/vt1.vtt',
$result
);
关于php - 如何使用正则表达式 php 替换 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34330175/