Expression régulière pour analyser les liens d'une page Web ?

Je recherche une expression régulière .NET pour extraire toutes les URL d'une page Web, mais je n'en ai pas trouvé une suffisamment complète pour couvrir toutes les différentes façons de spécifier un lien.

Et une question complémentaire :

Existe-t-il une expression régulière pour les gouverner tous ? Ou est-ce que je ferais mieux d'utiliser une série d'expressions régulières moins compliquées et d'utiliser simplement plusieurs passes contre le HTML brut? (Vitesse vs maintenabilité)

请先 登录 后评论

1 réponses

Jeff Atwood

depuis la bibliothèque RegexBuddy :

URL : Rechercher dans le texte intégral

La classe de caractères finale garantit que si une URL fait partie d'un texte, la ponctuation telle qu'une virgule ou un point après l'URL n'est pas interprétée comme faisant partie de l'URL.

(https?|ftp|file)://[-A-Z0-9+&@#/%?=~_|!:,.;]*[-A-Z0-9+&@#/%=~_|]

请先 登录 后评论