Avatar billede bobbedude Nybegynder
27. februar 2006 - 20:49 Der er 3 kommentarer og
1 løsning

Fjerne ting fra en variabel

Jeg har en variabel som retuner en html side på den side er der en masse HTML jeg har så kun brug for det data der står mellem 

<TEXTAREA id=embedhtml onclick=this.select() name=embedhtml rows=5 cols=22> HER ER TEKSTEN </TEXTAREA>

Hvordan får jeg lige resten fjernet ?
Avatar billede mathiasvestergaard Nybegynder
27. februar 2006 - 22:01 #1
du kan sikkert bruge denne funktion til noget ;-)

Function sliceIt(str,strStart,strSlut)
  Dim strT
  strT = str
  strT = Mid(strT, InStr(LCase(strT), "" & LCase(strStart)))
  strT = Mid(strT, InStr(LCase(strT), "") + 0)
  strT = Left(strT, InStrRev(LCase(strT), "" & LCase(strSlut)) -1 )
  sliceIt= strT
End Function

denDelDuSkalBruge = sliceIt("her står alt det der ikke skal med <TEXTAREA id=embedhtml onclick=this.select() name=embedhtml rows=5 cols=22> HER ER TEKSTEN </TEXTAREA> og her er noget mere der ikke skal med", "<TEXTAREA ","</TEXTAREA>")


jeg garanterer ikke for at det virker, men kan du ikke se det som et hint, og så selv lige prøve dig frem med resten?
Avatar billede eagleeye Praktikant
28. februar 2006 - 00:11 #2
Prøv sådan her:

str = "afasdf<TEXTAREA id=embedhtml onclick=this.select() name=embedhtml rows=5 cols=22> HER ER TEKSTEN </TEXTAREA>adfadf"
tmp = str
tmp = mid(tmp,instr(1,tmp,"<textarea",1)+1) 'Fjerner "blabla" før <TEXTAREA id=bla bla...>"
tmp = mid(tmp,instr(tmp,">")+1) 'Fjerner "<TEXTAREA id=bla bla...>"
str = mid(tmp,1,instr(1,tmp,"</textarea>",1)-1) 'Fjerner "</TEXTAREA>blabla"

response.write str


Et alternativ hvis du har mulighed for at bruge regular expression så kan dette bruges:

str = "blabla <TEXTAREA id=embedhtml onclick=this.select() name=embedhtml rows=5 cols=22> HER ER TEKSTEN </TEXTAREA>bla bla"

Set regEx = New RegExp
regEx.Global = true
regEx.IgnoreCase = true
regEx.Pattern = "<TEXTAREA.*>[\s\S]*</TEXTAREA>"
set rematches = regEx.Execute (str)
for each rematch in rematches
  tmp = rematch.value
  tmp = mid(tmp,instr(tmp,">")+1) 'Fjerner "<TEXTAREA id=bla bla...>"
  str = mid(tmp,1,instr(1,tmp,"</textarea>",1)-1) 'Fjerner "</TEXTAREA>"
next
set rematches = Nothing
Set regEx = Nothing

response.write str



Er der kun et textarea på siden?
Avatar billede bobbedude Nybegynder
28. februar 2006 - 10:44 #3
Hey eageleeye lang tid siden :)

jeg har selv fået noget smækket sammen men det virker nu ikke helt efter hensigten.


Dim objXMLHTTP, objXml
Set objXml = Server.CreateObject("Microsoft.XMLHTTP")
objXml.Open "GET", GoogleForm, False
objXml.Send
strHtml = objXml.ResponseText
Set objXml = Nothing

Set regEx = New RegExp
regEx.global = true
regEx.Pattern = ".*videoUrl=(.*)allowScriptAccess.*"
strIso = regEx.Replace( strHtml, "$1" )
Set regEx = nothing

pos1 = instr(strIso,"<!DOCTYPE")
pos2 = instr(strIso,"</table>")
if pos1 > 0 and pos2 > 0 then
    str = left(strIso,pos1 - 1) & right(strIso,len(strIso) - pos2 - 8)
Else
    str = ""
end if



den skal hente en streng FRA: videoUrl= TIL: allowScriptAccess

Men der er stadig en del html der ikke bliver fjernet
Avatar billede bobbedude Nybegynder
20. marts 2006 - 08:05 #4
Ok er det nogen der vil svarer ? :)
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