HTML Tags entfernen
Verfasst: 25.11.2004 18:15
Ich habe ein Programe das per InternetRead_ eine HTML Datei liest und den Textinhalt auswerted.
Dabei stören die HTML tags.
Um diese zu entfernen, lade ich das HTML Dokument in ein Editorgadget und nutze meine untag() Procedur. Klappt soweit prima.
Nur kennt jemand was besseres um HTML tags zu entfernen oder noch besser HTML zo TXT zu wandeln?
Dabei stören die HTML tags.
Um diese zu entfernen, lade ich das HTML Dokument in ein Editorgadget und nutze meine untag() Procedur. Klappt soweit prima.
Nur kennt jemand was besseres um HTML tags zu entfernen oder noch besser HTML zo TXT zu wandeln?
Code: Alles auswählen
Procedure unTag(id.l,tagopen$,tagclose$,replace$)
lpfindtext.FINDTEXTEX
flags.l=1
lpfindtext\chrg\cpMin=0
Repeat
lpfindtext\chrg\cpMax=Len(GetGadgetText(id))
lpfindtext\lpstrText=@tagopen$
ret= SendMessage_(GadgetID(id),#EM_FINDTEXTEX,flags,@lpfindtext)
If ret<>-1
z=lpfindtext\chrgText\cpMin
lpfindtext\chrg\cpMin=z
lpfindtext\chrg\cpMax=Len(GetGadgetText(id))
lpfindtext\lpstrText=@tagclose$
ret=SendMessage_(GadgetID(id),#EM_FINDTEXTEX,flags,@lpfindtext)
lpfindtext\chrgText\cpMin=z
SendMessage_(GadgetID(id),#EM_EXSETSEL,0,@lpfindtext\chrgText)
;Delay(100)
SendMessage_(GadgetID(id),#EM_REPLACESEL ,1,replace$)
;Delay(100)
EndIf
Until ret=-1
lpfindtext\chrgText\cpMin=0
lpfindtext\chrgText\cpMax=0
SendMessage_(GadgetID(id),#EM_EXSETSEL,0,@lpfindtext\chrgText)
EndProcedure
;und dann
unTag(#listing,"<head>","</head>","")
unTag(#listing,"<",">","")