2011-10-14 64 views
1

我有這個html。我試圖得到它的innerText沒有任何標籤,HtmlAgilityPack從html中清理內部文本

<h1>my h1 content</h1> 
<div class="thisclass"> 
<p> some text</p> 
<p> some text</p> 
    <div style="some_style"> 
    some text 
     <script type="text/javascript"> 
     <!-- some script --> 
     </script> 
    <script type='text/javascript' src='some_script.js'></script> 
    </div> 
<p> some text<em>some text</em>some text.<em> <br /><br /></em><strong><em>some text</em></strong></p> 
    <p> </p> 
    </div> 

什麼我試圖做的就是將文本作爲用戶會從類thisclass看到它。 我想剝離任何腳本標記和所有標記,只是獲取純文本。

這是我使用:

Dim Tags As HtmlNodeCollection = root.SelectNodes("//div[@class='thisclass'] | //h1") 

有沒有人有什麼想法?

謝謝。

回答

0

試試這個(警報C#代碼前進):

foreach(var script in root.SelectNodes("//script")) 
{ 
    script.ParentNode.RemoveChild(script); 
} 

Console.WriteLine(root.InnerText); 

這給了我下面的輸出:

my h1 content some text some textsome text some textsome textsome text. some text 

希望這有助於。