Avatar billede a2p-dk Nybegynder
24. november 2010 - 22:54 Der er 4 kommentarer og
1 løsning

er denne regexp overhoedet garenteret?

Hej jeg har skrevet denne regexp til preg_replace, men nu tænker jeg på om den overhovedet er sikker.
/([^\\\\])(\')(.*?)([^\\\\])(\')/i

matcher stringende lign:
'abc' og 'ab\'c'

og IKKE
\'asgag' og 'asgas\'

Jeg tænker bare om (.*?) kunne finde på at tage min backslash med og så derfor ville indeholde f.eks:
asgas\

så stringen
'ashas\'

kunne komme til at blive matched.

Håber på en bedre forståelse omkring regexp. Eller evt. bare om min linje er i orden.

Tak

forresten virker den efter hensigten.
Avatar billede jakobdo Ekspert
28. november 2010 - 11:43 #1
I stedet for at smide en masse kode, kunne du ikke forklare hvad det er du forsøger?
Hvad har du?
Hvad vil være korrekt input, hvad skal fejle etc...?
Avatar billede a2p-dk Nybegynder
28. november 2010 - 12:06 #2
evt. har jeg en linje der ser sådan ud:

function abc($a , $c = "abc\"d", $d = "abcd")


Så skal
"abc\"d"
og
"abcd"

matches
Avatar billede jakobdo Ekspert
28. november 2010 - 14:18 #3
Det vil sige at:

abc"d og abcd skal være det samme?

Kan du komme med flere eksempler?
Avatar billede a2p-dk Nybegynder
10. januar 2011 - 18:55 #4
min backslash er vigtig. eg. 'abc\'d' hvor jeg så for matched det hele og får stringen "'abc\'d'".

Men det hele er egentligt lige meget nu. læg et svar hvis du vil. :)
Avatar billede jakobdo Ekspert
10. januar 2011 - 20:23 #5
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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