Avatar billede dkkarpen Nybegynder
11. januar 2001 - 13:06 Der er 8 kommentarer og
1 løsning

Bedre replace funktion til \" og \'

Halløj

Jeg kunne godt bruge en bedre funktion til at udføre følgende:

str = Request.Form(\"str\")
repstr = chr(39) & chr(39)
str = replace(str,chr(39),repstr)
Avatar billede sone Nybegynder
11. januar 2001 - 13:56 #1
str = Replace(str, \"\'\", \"\'\'\")

...eller hvad tænker du på ?
Avatar billede dkkarpen Nybegynder
11. januar 2001 - 14:01 #2
Ja hvis det har samme effekt så er det hvad jeg tænker.
Avatar billede stringbuffer Nybegynder
11. januar 2001 - 14:21 #3
de her linier laver noget du måske kan bruge

Dim reg
Set reg = New RegExp
reg.Pattern = \"([\\\'\\\" & chr(39) & \"])\"
reg.Global = True
str = reg.Replace(str,\"$1$1\")
Avatar billede tdaugaard Nybegynder
11. januar 2001 - 15:14 #4
hæ hæ ... den anden bruger 3 linier, som faktisk kunne skrives som 2:

str = Request.Form(\"str\")
str = replace(str,\"\'\",\"\'\'\")

og den med RegExp bruger 5 linier ;o)
Avatar billede sone Nybegynder
11. januar 2001 - 16:02 #5
Pak min ene linie ind i en funktion:

FUNCTION DBtext(input)
  DBtext = Replace(input, \"\'\", \"\'\'\")
END FUNCTION

Så kan du kalde dem generelt:
SQL=\"UPDATE tabel SET felt=\" & DBtext(Request.Form(\"str\")) & \" WHERE id=1\"
Avatar billede dkkarpen Nybegynder
11. januar 2001 - 17:25 #6
Sone> Hvad replacer du?

\' og \"?

Jeg spørger fordi eksperten har det med at fucke de tegn up.
Avatar billede dkkarpen Nybegynder
11. januar 2001 - 17:35 #7
Det fungerer fint sone. Tak for det ;-)
Avatar billede stringbuffer Nybegynder
11. januar 2001 - 23:19 #8
tag dig sammen tdaugaard - prøv at lære lidt om regExp før du gør grin med brug af dem.

replace erstatter jo kun det første forekomst af den streng, man angiver som dens parameter. Hvorimod virker en regExp med global-property sat til sand for ALLE forekomster af det, man søger efter, i input-strengen
Avatar billede tdaugaard Nybegynder
11. januar 2001 - 23:21 #9
stringbuffer:> tag dig SELV sammen!! Replace() erstatter ALLE forekomster af søgestrengen!
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