Avatar billede ihtezaz Praktikant
24. oktober 2006 - 14:57 Der er 13 kommentarer

Alt hvad der står imellem bestemt tag skal returneres

Hej
Jeg er ikke ret god til vb, og har derfor brug for hjælp til:

I min tekst har nogle tags kaldet <temp> </temp> Jeg skal have lavt en metode der tager tekst og returnere tekst der står start taget <temp> og slut tagget </temp>. Tagget kan desuden have attributter. såldes <temp alt="test">
Avatar billede olebole Juniormester
24. oktober 2006 - 15:11 #1
<ole>

Hvor i universet befinder denne tekst sig? I en kontrol, i et dokument på WWW, i en fil på din PC, på en seddel i din nabos baglomme ... eller noget helt femte?  =)

/mvh
</bole>
Avatar billede ihtezaz Praktikant
24. oktober 2006 - 15:20 #2
Det er bare noget tekst jeg får igennem et tekstbox control, som jeg skal have filtrerert
Avatar billede kabbak Professor
24. oktober 2006 - 15:20 #3
Tekst = "<temp> og slut tagget </temp>"
StrTekst = Trim(Mid(Tekst, InStr(1, Tekst, ">") + 1, (InStr(1, Tekst, "</") - 1) - InStr(1, Tekst, ">")))
Avatar billede ihtezaz Praktikant
24. oktober 2006 - 15:21 #4
hey kabbak, tager den hensyn til at <temp> kan have vilkårlig attributter ?
Avatar billede ihtezaz Praktikant
24. oktober 2006 - 15:23 #5
Kabbak, problemmet med den er, at den også tager alle andre tags med, det må udlukkende være <temp> tagget.
Avatar billede kabbak Professor
24. oktober 2006 - 15:31 #6
StrTekst = Trim(Mid(Tekst, InStr(1, Tekst, "temp>") + 1, (InStr(1, Tekst, "</temp") - 1) - InStr(1, Tekst, "temp>")))

nu mangler du kun dem med atributter
Avatar billede ihtezaz Praktikant
24. oktober 2006 - 16:08 #7
Jeg får denne: Invalid procedure call or argument: 'Mid'
Avatar billede kabbak Professor
24. oktober 2006 - 17:03 #8
Ok det var lige forhastet, nu tager jeg det i 2 tempi

tekst = "<temp> og slut tagget </temp>"
strtekst1 = Mid(tekst, InStr(1, tekst, "<temp") + 5, (InStr(1, tekst, "</temp") - 1) - (InStr(1, tekst, "<temp") + 5))
strtekst1 = Trim(Right(strtekst1, Len(strtekst1) - InStr(1, strtekst1, ">")))
Avatar billede ihtezaz Praktikant
24. oktober 2006 - 17:05 #9
Ok, hvis nu der flere forekomster af <temp> </temp> hvordan kan jeg så lige også tag disse med.
Avatar billede kabbak Professor
24. oktober 2006 - 17:45 #10
Skal de kobles sammen i samme string
Avatar billede kabbak Professor
24. oktober 2006 - 17:51 #11
Dim UdTekst As String, TempTekst As String, Tekst As String
UdTekst = ""
Tekst = "    <temp> og slut tagget </temp>  mere tekst <temp> og slut2 tagget </temp> "
Do
TempTekst = Mid(Tekst, InStr(1, Tekst, "<temp") + 5, (InStr(1, Tekst, "</temp") - 1) - (InStr(1, Tekst, "<temp") + 5))
TempTekst = Trim(Right(TempTekst, Len(TempTekst) - InStr(1, TempTekst, ">")))
Tekst = (Right(Tekst, (Len(Tekst) - (InStr(1, Tekst, "</temp") + 6))))
UdTekst = UdTekst & " " & TempTekst
Loop Until InStr(1, Tekst, "<temp") = 0
Avatar billede ihtezaz Praktikant
25. oktober 2006 - 23:01 #12
Takker Kabbak, det kun jeg brug :) smid svar
Avatar billede kabbak Professor
26. oktober 2006 - 08:45 #13
et svar ;-))
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