文字列(入力されたURLを含む可能性のある説明テキスト)から入力されたURLを抽出し、それらをhrefに変換する正規表現があります。これは、URLが入力され、最後の文字が「)」の「、」である場合を除いて、すべて正常に機能します。この文字もURLの一部として使用されます。どうすればこれを防ぐことができますか?
テキストの例:
こんにちはこれは私の美しいメッセージで、リンク(www.website.comを参照)といくつかの詳細情報が含まれています。
私の正規表現はURLを読み取りますが、hrefを作成するときに最後の文字「)」も使用するため、リンクが正しくありません。
私の正規表現:
preg_replace("#(^|[\n ])((www|ftp)\.[^ \"\t\n\r< ]*)#", "\\1<a href=\"http://\\2\" target=\"_blank\">\\2</a>", $text);