Bonjour à tous,
J'ai un texte au format html en entrée contenant divers liens <a href=""></a>. Le format peut être différent dans le sens où href peut être le deuxième paramètre de a. Ainsi qu'il ne faut pas que ce soit sensible à la casse.
J'essaie actuellement d'ajoutersur tous les liens dont le href ne commence pas par "mailto:" ou "tel:"
Code : Sélectionner tout - Visualiser dans une fenêtre à part target="_blank"
Voici mon code actuellement :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 <a href="tel:+3300000000">+3300000000</a> // Ne doit pas contenir le target="_blank" <a href="mailto:toto@tata.com">toto</a> // Ne doit pas contenir le target="_blank" <a href="http://salut.com">salut</a> // Doit contenir le target="_blank" <a href="../index">salut</a> // Doit contenir le target="_blank"
Je n'arrive pas à faire de OU. J'ai essayé plusieurs solutions avec [..|..] et autres sans aucun succès.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 html = Regex.Replace(html, @"<(a)((?!.*mailto:).*[^>]+)>", "<$1 target=\"_blank\"$2>", RegexOptions.IgnoreCase | RegexOptions.Compiled);
Merci par avance !
Partager