Page 1 of 1

Passen Sie das Fragezeichen und alles danach an

Posted: 12 Jan 2025, 09:09
by Guest
Ich versuche, preg_replace zu verwenden, um Bildlinks aus URLs zu erstellen.
Beispiel:
https://www.google.com/image.png
wird

Code: Select all

[img]https://www.google.com/image.png[/img]

Code: Select all

$patterns = array (
'~https?://\S+?(?:png|gif|webp|jpe?g)~'
);
$replace = array (
'
[img]$0[/img]
'
);
$string = preg_replace($patterns, $replace, $string);
Der Kürze halber habe ich die irrelevanten Teile entfernt, aber das ist nicht ohne Grund ein Array.
Das funktioniert großartig, es sei denn, das Bild hat ein Fragezeichen darin... also
https://www.google.com/image.png?123456
In diesem Fall die Frage Markierung und alles, was danach folgt, wird nicht übereinstimmen ... also sind wir am Ende mit:

Code: Select all

[img]https://www.google.com/image.png[/img]
?123456
Wie kann ich dafür sorgen, dass es auch mit dem Fragezeichen übereinstimmt?