2016-06-01 6 views
0

Ich benutze Coldfusion.
Die folgende Syntax scheint alle HTML-Tags für die str Variable zu entfernen:Wie können wir mit Negation mit Coldfusion regexp?

ReReplaceNoCase(#str#,"<[^>]*(?:>|$)","","ALL")> 

Allerdings würde ich beide <div> und </div> intakt halten mögen. Wie kann ich das machen?

+0

möglich dublicate von http://stackoverflow.com/questions/970817/how-can-i-clean-html-tags-out-of-a-coldfusion-string – yash

Antwort

0

Statt einer Regex, würde ich empfehlen, JSoup zu verwenden. Es erleichtert das Parsen und Manipulieren von HTML-Fragmenten.

Laden Sie JSoup herunter und installieren Sie es. Erstellen Sie eine Whitelist mit den Tags, die Sie behalten möchten. Dann reiben Sie Ihre HTML-String mit JSoup.clean(...):

jsoup = createObject("java", "org.jsoup.Jsoup"); 
whiteList = createObject("java", "org.jsoup.safety.Whitelist"); 
cleanString = jsoup.clean(yourHTMLString, Whitelist.none().addTags([ "div" ])); 
writeDump(cleanString); 
+0

Danke für die Idee. – user963063

Verwandte Themen