Avatar billede skovtrold Nybegynder
11. april 2002 - 13:21 Der er 4 kommentarer og
1 løsning

Stripping af HTML fra file.stream ?

Jeg har en streng der hedder textStreamObject.ReadAll, som består af en HTML-fil.
Jeg har brug for en function der stripper denne fil for hhv. <style>- og <script>-tags inkl. alt hvad der er imellem <style> og </style> (+ <script> og </script>.
Kan nogen hjælpe med en smart måde at gøre det på? (Haster)

/ST
Avatar billede skovtrold Nybegynder
11. april 2002 - 13:27 #1
Regular Expressions (VB Script) vil være at foretrække...
Avatar billede wittnezz Nybegynder
11. april 2002 - 14:34 #2
<%
check = true

while check=true

pos = inStr(DIN_STRENG,"<style>")

if not pos = 0 then
DIN_STRENG = Left(DIN_STRENG, pos) + Right(DIN_STRENG, inStr(DIN_STRENG, "</style>" + 8)

else

pos = inStr(DIN_STRENG,"<script>")

if not pos = 0 then
DIN_STRENG = Left(DIN_STRENG, pos) + Right(DIN_STRENG, inStr(DIN_STRENG, "</script>" + 9)

end if

if InStr(DIN_STRENG, "<script>" = 0 then
  if InStr(DIN_STRENG, "<style>" = 0 then
    check = false
  end if
end if

WEND


Tror jeg fik det hele med
Avatar billede wittnezz Nybegynder
11. april 2002 - 14:34 #3
måske lige bortset fra

%>
Avatar billede skovtrold Nybegynder
11. april 2002 - 14:53 #4
Det krævede lige lidt tilretning, da der manglede END IF og en parantes hist og pist - men så virker det også :-)
Så hvis du lige skriver en kort besked markeret som "svar" så får du dine point (når du kommenterer kan jeg ikke give point)

Den reviderede udgave af scriptet er indsat herunder, hvis andre vil kigge med:
--------------------
Dim check,pos
check = true

while check = true

pos = inStr(lcase(strStream),"<style>")

if not pos = 0 then
    strStream = Left(strStream, pos) + Right(strStream, inStr(lcase(strStream), "</style>") + 8)
else
    pos = inStr(lcase(strStream),"<script>")

    if not pos = 0 then
        strStream = Left(strStream, pos) + Right(strStream, inStr(lcase(strStream), "</script>") + 9)
    end if

    if InStr(lcase(strStream), "<script>") = 0 then
      if InStr(lcase(strStream), "<style>") = 0 then
        check = false
      end if
    end if

end if
WEND
Avatar billede wittnezz Nybegynder
11. april 2002 - 15:02 #5
Ok, det gik vist lidt hurtigt her...!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester