Avatar billede bongii Nybegynder
23. juni 2009 - 09:26 Der er 7 kommentarer og
1 løsning

Fjerne alt mellen < og >

Hej.

Hvordan laver jeg en asp funktion til at fjerne alt mellem < og > således brugeren ikke kan poste html tags i en formular?
Avatar billede keysersoze Guru
23. juni 2009 - 09:38 #1
Nu kan der selvfølgelig være en grund til at du ønsker det præcist sådan - men har du overvejen at smide outputtet gennem en Server.HTMLEncode så alt udskrives som ren tekst?
Avatar billede softspot Forsker
23. juni 2009 - 09:54 #2
Jeg vil tro dette kan gøre det:

dim rx
set rx = new RegExp
rx.ignorecase = true
rx.global = true
rx.pattern = "<[^>]*>"
nohtml = rx.Replace(html,"")<


hvor variablen html indeholder det der skal filtreres og nohtml (forhåbentlig) indeholder resultatet efter filtrering...
Avatar billede softspot Forsker
23. juni 2009 - 09:55 #3
Ups! Der sneg sig lige en "mindre end" ind i slutningen af kodeeksemplet

dim rx
set rx = new RegExp
rx.ignorecase = true
rx.global = true
rx.pattern = "<[^>]*>"
nohtml = rx.Replace(html,"")
Avatar billede bongii Nybegynder
23. juni 2009 - 11:56 #4
Takker Softspot. Det virker perfekt.

Soze: Det skal bruges til en slags tagwall på en side, så det er bedre bare at fjerne tags.
Avatar billede softspot Forsker
23. juni 2009 - 12:27 #5
Velbekomme :-)
Avatar billede softspot Forsker
23. juni 2009 - 12:54 #6
Tak for point :-)
Avatar billede keysersoze Guru
23. juni 2009 - 17:53 #7
så må vi ikke håbe at det er matematiske formler din tagwall kommer til at indeholde ;)
Avatar billede softspot Forsker
23. juni 2009 - 19:22 #8
Ja, det er under alle omstændigheder nok en rigtig god idé at HTMLencode det output du vil vise, for det mønster "knækker" desværre ved større end-tegnet...

Noget kan muligvis reddes ved at benytte flg. mønster:

rx.pattern = "<\w+[^>]*>"

det burde i det mindste sikre at der skal stå mindst ét ord imellem mindre end og større end, før det bliver fjernet (tror jeg nok)...
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