Diese Abfrage ersetzt nacheinander die gebräuchlichsten HTML-Tags „<p>“, „</p>“, „<div>“, „</div>“, „<span>“, „</span>“, „<strong>“, „</strong>“, „<em>“ und „</em>“, „<b>“ und „</b>“, „<br />“, „<li>“ und „</li>“, „<ul>“ und „</ul>“ durch einen leeren String. Mehr zu ASCII Codes
Es ist jedoch wichtig zu beachten, dass dies nur funktioniert, wenn Tags wie z.B. „<p>“ und „</p>“ korrekt formatiert und nicht in verschachtelten Tags oder Kommentaren enthalten sind.
Funktion für das Regelwerk
REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(@value, CHAR(60) + 'p' + CHAR(62), ''), CHAR(60) + '/' + 'p' + CHAR(62), ''), CHAR(60) + 'div' + CHAR(62), ''), CHAR(60) + '/' + 'div' + CHAR(62), ''), CHAR(60) + 'span' + CHAR(62), ''), CHAR(60) + '/' + 'span' + CHAR(62), ''), CHAR(60) + 'strong' + CHAR(62), ''), CHAR(60) + '/' + 'strong' + CHAR(62), ''), CHAR(60) + 'em' + CHAR(62), ''), CHAR(60) + '/' + 'em' + CHAR(62), '') , CHAR(60) + 'b' + CHAR(62), ''), CHAR(60) + '/' + 'b' + CHAR(62), ''), char(60) + "br" + char(32) + char(47) + char(62),""), CHAR(60) + 'li' + CHAR(62), ''), CHAR(60) + '/' + 'li' + CHAR(62), ''), CHAR(60) + 'ul' + CHAR(62), ''), CHAR(60) + '/' + 'ul' + CHAR(62), '')
Erweiterung um einen weiteren Tag:
Vor dem REPLACE folgendes ergänzen: REPLACE(REPLACE
Am Ende der Funktion folgendes ergänzen (wobei TAG durch den zu entfernenden TAG zu ersetzten ist
, CHAR(60) + 'TAG' + CHAR(62), ''), CHAR(60) + '/' + 'TAG' + CHAR(62), '')
Befindet sich innerhalb der Tags ein Leerzeichen, ist CHAR32 zu verwenden, z. B. bei <br />. Um den Tag zu entfernen ist folgende Ergänzung notwendig:
, char(60) + "br" + char(32) + char(47) + char(62),"")
Bedeutung:
char(60) steht für <
char(32) steht für das Leerzeichen
char(47) steht für /
char(62) steht für >
Für mehr Informationen zur REPLACE SQL-Funktion siehe hier