1

私はこのhtmlを持っています。タグなしでInnerTextを取得しようとしていますが、

<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>

やろうとしているのは、ユーザーがこのクラスのクラスからテキストを見るのと同じようにテキストを取得することです。スクリプトタグとすべてのタグを削除して、プレーンテキストを取得したいと思います。

これが使用しているものです:

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

誰かアイデアはありますか?

ありがとう。

4

1 に答える 1

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

お役に立てれば。

于 2011-10-14T23:09:51.343 に答える