Il y a beaucoup de regex pour faire correspondre une URL. Cependant, j'essaye de faire correspondre des URL qui n'apparaissent nulle part dans une étiquette d'hyperlien <a>
(HREF
, valeur interne, etc.). Donc, aucun des URL dans ceux-ci devraient correspondre:Expression régulière pour trouver les URL ne se trouvant pas dans un lien hypertexte
<a href="http://www.example.com/">something</a> <a href="http://www.example.com/">http://www.example2.com</a> <a href="http://www.example.com/"><b>something</b>http://www.example.com/<span>test</span></a>
Toute URL de l'extérieur <a></a>
doit être adapté.
Une approche que j'ai essayé était d'utiliser un négatif pour voir préanalyse si la première balise <a>
après l'URL est une ouverture <a>
ou une fermeture </a>
. Si c'est une fermeture </a>
alors l'URL doit être dans un lien hypertexte. Je pense que cette idée était correcte, mais l'expression rationnelle negative n'a pas fonctionné (ou plus exactement, l'expression régulière n'a pas été écrite correctement). Tous les conseils sont très appréciés.
Quelle plateforme? Perl, .NET ou Java? –
duplicata possible de [Comment faire pour encapsuler du texte dans un lien hypertexte SEULEMENT si ce n'est pas déjà encapsulé dans un lien hypertexte] (http://stackoverflow.com/questions/1191637/how-to-wrap-text-in-a-hyperlink -only-if-it-isnt-déjà-enveloppé-dans-un-hyperlien) – tchrist