次のような文字列から有効な URL を取得する方法を探しています。
$string = 'http://somesite.com/directory//sites/9/my_forms/3-895a3e/somefilename.jpg|:||:||:||:|19845';
私の元の解決策は次のとおりです。
preg_match('#^[^:|]*#', str_replace('//', '/', $string), $modifiedPath);
ただし、明らかに、文字列の途中にあるスラッシュではなく、 http:// からスラッシュを削除します。
オリジナルから期待される出力は次のとおりです。
http://somesite.com/directory/sites/9/my_forms/3-895a3e/somefilename.jpg
最初に文字列の http 部分をいつでも切り離すことができますが、可能であれば正規表現の形式でより洗練されたソリューションが必要です。ありがとう。