Je travaille sur un projet où je dois remplacer urls texte partout domain.com
-www.domain.com
à http(s)://www.domain.com
et adresses e-mail à la bonne balise html <a>
. J'utilisais une excellente solution dans le passé, mais elle utilisait la fonction eregi_replace
maintenant dépréciée. En plus de cela, l'expression régulière utilisée pour une telle fonction ne fonctionne pas avec preg_replace
. Donc, fondamentalement, l'utilisateur entre un message dans lequel peut/ne peut pas contenir une adresse de lien/e-mail et j'ai besoin d'une expression régulière qui fonctionne avec preg_replace
pour remplacer ce lien/email avec un lien HTML comme <a href="link">link</a>
.PHP Regular Expression URL de texte HTML Lien
Veuillez noter que j'ai plusieurs autres preg_replaces aussi. Ci-dessous est mon code actuel pour le autres remplacements en cours.
$patterns = array('~\[@([^\]]*)\]~','~\[([^\]]*)\]~','~{([^}]*)}~','~_([^_]*)_~','/\s{2}/');
$replacements = array('<b class="reply">@\\1</b>','<b>\\1</b>','<i>\\1</i>','<u>\\1</u>','<br />');
$msg = preg_replace($patterns, $replacements, $msg);
return stripslashes(utf8_encode($msg));
Excellent homme! Tu sais ce que tu fais! J'apprécie votre aide avec celui-ci. –
note rapide - ajouter un point-virgule après la fermeture) pour $ remplacer. –
@Lucanos c'est super, mais l'URL, ne supporte pas les parenthèses. – Vallentin