2011-01-14 97 views
0

我想提取所有圖像鏈接,以便我可以自由使用所有圖像。如何在asp.net C#從HTML文本字符串中提取圖像鏈接

<div> 
    <img src="/upload/Tom_Cruise-242x300.jpg" alt="Tom_Cruise-242x300.jpg" align="left" border="0" height="300" width="242"> 
    sample text sample text sample text sample text 
    <img src="http://www.sharicons.com/images/rss_icon.jpg" alt="Icon" align="left" border="0" height="100" width="100"> 
    sample text sample text sample text sample text sample text sample text sample text sample text</div> 

做給我的解決方案

string ProcessedText = Regex.Replace(sb.ToString(), "^<img[^>]*>", string.Empty); 

回答

1

我會使用HTML Agility Pack。
然後,你可以做這樣的事情:

HtmlNodeCollection allImages = doc.DocumentNode.SelectNodes("//img[@src]"); 
0

一個簡單的方法做,這是把字符串轉換成一個名爲myString字符串,然後運行下面的代碼:

List<string> imagePaths = new List<string>(); 
while(myString.IndexOf("img src=") >= 0){ 
    myString = myString.Substring(myString.IndexOf("img src=")+9); 
    imagePaths.Add(myString.Substring(0,myString.IndexOf("\""))); 
} 

列表imagePaths現在將包含所有圖像鏈接。

0

您可以使用HTMLAgilityPack或第二個選項是正則表達式:)