Avatar billede thomaxz Nybegynder
03. januar 2006 - 14:20 Der er 5 kommentarer og
1 løsning

hejsa hvordan er det lige man finder hvad der i i mellem

hejsa hvordan er det lige man finder hvad der i i mellem f.eks. [o] og [/o] i php?
Avatar billede hmortensen Nybegynder
03. januar 2006 - 14:26 #1
Fx. sådan her:
preg_match("/\[0\](.+)\[\/0\]/", $str, $o);
echo $o[1];
Avatar billede Slettet bruger
03. januar 2006 - 14:37 #2
hmortensen: Husk at + i RegExp er "greedy" pr. default, hvilket nok ikke ønskes her. Og så at ] ikke skal escapes hvis [ allerede er blevet det. Hvis \ tilføjes til PHP's string-parser, bruger den også længere tid på at finde ud af hvad den escapede sekvens skal være, end at den pågældende sekvens ikke findes. (Som fx \[.) Så derfor vil man nok vælge at lave en dobbelt \.

thomaxz:
Det ligner at det skal bruges til at konvertere noget forum-agtig kode, så det bør nok også være underordnet om [o] er med stort eller småt.
Så mønstret skal nok være dette:
/\\[o](.+?)\\[\\/o]/i

Hvis det derimod betyder noget om o skal være med stort eller småt, skal du bare fjerne det sidst "i", i møntret.

:-)
Avatar billede thomaxz Nybegynder
03. januar 2006 - 14:39 #3
Tak

men kunne godt bruge en lille forklaring.


preg_match
^commando ved det

("/\[0\](.+)\[\/0\]/",

/ <- hvad gør den?
\[o\] <-min første [o]  backslashe escaper [ bracketnes ved det
(.+) <- hvad gør det?
\[\/0\] <-min første [/o]  backslashe escaper [ bracketnes ved det
/ <-hvad gør den?


$str,
^min streng med [o] og [\o]

$o);
^resultat arraet


og ellers læg et svar hvis du vil have pointne.
Avatar billede hmortensen Nybegynder
03. januar 2006 - 14:43 #4
Den første og sidste / er en delimiter, fortæller hvor mønstreret går til.
Det i () matcher alle tegn og returnerer det.

Det andet er korrekt ja, og så bør du nok bruge gartzen's forslag.


gartzen, tak for den lille lektion ;)
Avatar billede Slettet bruger
03. januar 2006 - 14:51 #5
;-)
Avatar billede thomaxz Nybegynder
17. januar 2006 - 21:56 #6
Tak.
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