2010-04-13 4 views
0

J'essaie d'aller chercher tout ce qui ressemble à une URL à partir d'une chaîneC# aller chercher tout ce qui ressemble à une URL

Comment le ferais-je avec C#?

la plupart des vont ressembler à ceci: http://www.something.com, mais certains peuvent ressembler à ceci: http://something.somethingelse.com

+2

http://xkcd.com/208/ – NibblyPig

+1

http://www.codinghorror.com/blog/2008/06/regular-expressions-now-you-have-two-problems.html – adrianbanks

Répondre

1

Vous voulez utiliser RegEx pour cela. Voici un handy article qui vous aidera à démarrer. C'est un article ASP.NET qui veut trouver des URL et les transformer en liens hypertexte mais qui réalise l'activité qui vous intéresse.

2

En supposant que vous êtes en train d'analyser [X] HTML - Utilisez le HTML Agility Pack.

droite de la page d'exemples:

foreach(HtmlNode link in doc.DocumentElement.SelectNodes("//a[@href"]) 
{ 
    HtmlAttribute att = link["href"]; 

    //Do stuff 
} 
1

Cela dépend vraiment du contexte, mais vous utiliserez généralement des expressions régulières (System.Text.RegularExpressions.Regex de classe). Pour obtenir des réponses plus spécifiques, comme le code, vous devrez indiquer à quoi ressemblera la chaîne environnante afin de pouvoir différencier l'URL de la non-URL.

Questions connexes