In der Api.Text
sind hilfreiche Methoden für den Umgang mit HTML-Strings
HtmlToPlainText
Die Methode extrahiert aus einem HTML nur den Text. Das Verhalten ist ähnlich zu Exchange, wenn es eine Mail sendet und den Inhalt auch als Plain-Text erzeugt, falls der Empfänger kein HTML kann oder aktiviert hat.
Es werden unterstützt:
- Absätze jeglicher Art -> Zeilenumbruch
- `
` -> Zeilenumbruch - Aufzählungen -> `* …`
- HTML Entities (`ö` etc.)
Skripte und CSS-Stile werden entfernt.
PlainTextToHtml
Wandelt einen nicht-HTML Text in HTML um. Dabei werden:
- Zeilenumbrüche zu `
`, - aufeinanderfolgende Leerzeichen zu `&bnsp; ` und
- Sonderzeichen zu HTML Entitäten. (Kein XSS möglich)
CleanHtml
HTML aufräumen, neu formatieren und nur den Body extrahieren. (für HTML-Spalten)
HtmlEquals
Zwei HTML Inhalte semantisch vergleichen. Die Funktion liefert im Gegensatz zum String-Vergleich auch dann true, wenn der HTML-Inhalt gleich aussieht, z.B.: falls sich die HTML Inhalte nur in der Formatierung oder den Header-Informationen unterscheiden. Das funktioniert auch bei augescheinlich stark unterschiedlichen Fragmenten, aber eine 100% Garantie gibt es natürlich nicht. False negatives sind aber nicht zu erwarten.