10

"'s"API を使用していますが、アポストロフィではなくAPI が返されることに気付きました。このテキストを html で表示するつもりはないので、ユーザーに表示するとテキストが奇妙に見えます。

どうすれば削除または変換できますか (推奨)? 私が使用しているこの API がこれらの特別なコードをこれ以上送信するかどうかはわかりません。そのため、単純に置換できるかどうかはわかりません。

4

3 に答える 3

16

.NET 4.0 の時点で使用できますSystem.Web.HttpUtility.HtmlDecode(System.Web.dll名前空間のアセンブリに存在しますSystem.Web)。

または、関数を使用することもできます。System.Net.WebUtility.HtmlDecodeこれに対する追加の参照は必要ありません (System.dll名前空間のアセンブリに存在するためSystem.Net)。

使用法:

string myStringToDecode = "Hello 'World'";

string decodedString = System.Web.HttpUtility.HtmlDecode(myStringToDecode);
// or
string decodedString = System.Net.WebUtility.HtmlDecode(myStringToDecode);
于 2013-06-17T23:18:36.753 に答える
0

MatchEveluatorは .NET 1.0以降で利用可能であり、この問題にもっと一般的な方法で対処したい場合、つまりHTML 文字のデコード以上のことをしたい場合に便利です。一般的なレシピは次のようになります。

MatchEvaluator ev = (Match m) => Char.ToString((char)Int32.Parse(m.Groups[1].Value));
string result = Regex.Replace("The king's key.";, @"&#(\d+);", ev);
于 2013-06-17T23:31:49.347 に答える