1

私はディスカッションWebサイトに取り組んでいます(http://www.wrangle.in/)。トピックのHTML形式の説明の新機能を追加しました。HTML形式の説明がデータベースに保存されます。トピックが読み込まれると、説明がHTML形式で表示されます。しかし、次のクラスを使用して文字列からHTMLタグを削除した後でも、メタディスクリプションにはHTMLタグが表示されます。しかし、このクラスは機能していません。ネットのどこかからダウンロードしました。 、&は削除されません キャラクターのようなものなど。すべてのタグを削除するわけではありません。HTMLの説明をMETAでテキストの説明として表示するにはどうすればよいですか?

/// <summary>
/// Methods to remove HTML from strings.
/// </summary>
public static class HtmlRemoval
{
    /// <summary>
    /// Remove HTML from string with Regex.
    /// </summary>
    public static string StripTagsRegex(string source)
    {
        return Regex.Replace(source, "<.*?>", string.Empty);
    }

    /// <summary>
    /// Compiled regular expression for performance.
    /// </summary>
    static Regex _htmlRegex = new Regex("<.*?>", RegexOptions.Compiled);

    /// <summary>
    /// Remove HTML from string with compiled Regex.
    /// </summary>
    public static string StripTagsRegexCompiled(string source)
    {
        return _htmlRegex.Replace(source, string.Empty);
    }

    /// <summary>
    /// Remove HTML tags from string using char array.
    /// </summary>
    public static string StripTagsCharArray(string source)
    {
        char[] array = new char[source.Length];
        int arrayIndex = 0;
        bool inside = false;

        for (int i = 0; i < source.Length; i++)
        {
            char let = source[i];
            if (let == '<')
            {
                inside = true;
                continue;
            }
            if (let == '>')
            {
                inside = false;
                continue;
            }
            if (!inside)
            {
                array[arrayIndex] = let;
                arrayIndex++;
            }
        }
        return new string(array, 0, arrayIndex);
    }
}
4

1 に答える 1

1

&amp;あなたが持っているコードは HTML タグを削除するだけで、とは変換されません&nbsp;

HttpUtility.HtmlDecodeを使用すると、読み取り可能な文字に変換されます。

于 2012-08-24T15:56:37.483 に答える