2016-05-24 13 views
0

私はhtmlタグを解析し、Htmlの敏捷性パックアンパサンドバグ(<title> Googleアドワーズ広告&貿易;</title>)

Googleアドワーズ広告&取引に問題があるために、HTMLの敏捷性パックを使用しています。 - を参照してください

タイトルでユーザーは&に入れて、それを変換してアンプを取得します。

私は成功せず、スペースを持つアンプを交換しようとしている:

var sTitle = htmlDoc.DocumentNode.SelectNodes("//title"); 

      sTitle.Replace("amp").("") 

私はどのように行うのですか?

+0

をすることができ、Yあなたが何をしているのか、あなたの予想されるインプットとアウトプットは何ですか? '&'は特殊文字なので、 '&'というテキストの表現は '&'というエンティティを使用します(これは '&'で表されます)。 –

+0

私が望む結果はGoogle Adwords&trade –

+0

です。私はHTMLを読んでいて、アンプなしで文字列を書き換えたいと思います。 –

答えて

1

明らかではない、あなたの問題は何ですが、あなたが適切にHTMLエンコードされたテキストを読み取る方法を求めていると仮定すると(&amp;をあるそのHTMLエンコーディングで&文字が(HTMLコードのリストと文字、彼らのためにthisを参照してくださいなどあなたはSystem.Net.HttpUtilityのHtmlDecode機能を使用する必要がある、)

を表す

次のデモを参照してください:。。それはあなたがHTMLを読んだり、書いているかどうかは明らかではありません

 string s = "<title>Google Adwords&amp;trade;</title>"; 

     HtmlDocument doc = new HtmlDocument(); 
     doc.LoadHtml(s); 

     var titleNode = doc.DocumentNode.SelectSingleNode("//title"); 

     //prints Google Adwords&amp;trade; 
     Console.WriteLine(titleNode.InnerText); 

     //prints Google Adwords&trade; 
     Console.WriteLine(HttpUtility.HtmlDecode(titleNode.InnerText)); 
+0

ありがとう、Visual Studio 2010で問題がありますが、System.NetにHttpUtilityがありません... –

+0

参照したいときプロジェクトに含まれていない/参照されていないDLLには、[include it](https://msdn.microsoft.com/en-us/library/7314433t%28v=vs.90%29.aspx)が必要です。あなたの場合、System.Net dllを追加します。 – Veverke

関連する問題