Avatar billede testwatest Nybegynder
25. september 2007 - 20:06 Der er 7 kommentarer og
1 løsning

Regulære udtryk

Hvordan kan jeg med regulære udtryk sætte en "skabelon" der ser således ud [*?*], og så ændre spørgsmålstegnet til noget?
Avatar billede testwatest Nybegynder
25. september 2007 - 20:07 #1
og spørgsmålstegnet skal bestå af 0-9a-z og punktum
Avatar billede nielle Nybegynder
25. september 2007 - 20:19 #2
Du har da næsten valgt alle de værste tegn til din template - de har alle sammen speciel betydning i regexp og skal derfor escapes:

Sådan?

preg_replace(/\[\*(\?)\*]\/, "NOGET", $dinTekst);
Avatar billede nielle Nybegynder
25. september 2007 - 20:20 #3
... og med de nyeste oplysninger:

preg_replace(/\[\*([0-9a-z.]+)\*]\/, "NOGET", $dinTekst);
Avatar billede nielle Nybegynder
25. september 2007 - 20:21 #4
... eller hvis der ikke skal skelnes mellem store og små bogstaver:

preg_replace("/\[\*([0-9a-z.]+)\*]\/i", "NOGET", $dinTekst);
Avatar billede testwatest Nybegynder
25. september 2007 - 21:09 #5
hvad med "-{#" er de 3 tegn specielle i regexp?

og smid lige et svar
Avatar billede nielle Nybegynder
25. september 2007 - 21:17 #6
Ja, og nej:

'-' bruges til et interval i en [] som sådan her [a-z1-9].

'{' bruges hvis man vil adskille noget som ellers ville flyde sammen til noget som så ville betyde noget helt andet, som i \{1}1 der ikke skal opfattes som \11.

'#' bruges til at lave kommenarer i regulære udtryk.

... og et svar :^)
Avatar billede testwatest Nybegynder
25. september 2007 - 21:35 #7
Ved du om der er nogle forskel på hastigheden af str_replace og preg_replace?
Avatar billede nielle Nybegynder
25. september 2007 - 21:38 #8
str_replace er hurtigst, men er ikke lige så alsidig som preg_replace.
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