Feedback

HTML aus einem String entfernen

Sprache: C#

Entfernt HTML Code aus einem String
/// <summary>
/// Removes the HTML Code.
/// </summary>
/// <param name="Text">The text.</param>
/// <returns>The string without HTML Code</returns>
private string StripHTML(string inputString)
{           
    return Regex.Replace(inputString, "<.*?>", string.Empty);
}
/// <summary>
/// Removes the HTML Code.
/// </summary>
/// <param name="Text">The text.</param>
/// <returns>The string without HTML Code</returns>
private string StripHTML(string inputString)
{           
    return Regex.Replace(inputString, "<.*?>", string.Empty);
}

3 Kommentare

  1. [u]@Darius:[/u] Der Punkt steht für ein beliebiges Zeichen (aber normalerweise kein Zeilenumbruch). Das Sternchen steht für 0 bis unendlich vorkommen von ‚.‘ Das Fragezeichen wiederrum sorgt dafür, das das ‚>‘ Zeichen als Tag-Ende betrachtet wird.

    [b]Ich[/b] würde es allerdings anders machen: <[^<]+("[^"]*"[^<]*)*>
    Wobei dieser Regex sicherlich auch nicht perfekt ist. Ich beachte aber noch, das ‚<' und ‚>‘ in Anführungszeichen normalerweise nicht als Taganfang bzw. Tagende betrachtet werden. Das mag zwar nicht normkonform sein, aber es gibt leider solchen Code.
    Beispiel: < img src="#" alt="“ />
    Andererseits sollte man ‚<' und ‚>‘ vielleicht doch besser als „& lt;“ und „& gt;“ schreiben, wobei das sicherlich nicht jeder Webprogrammierer macht.