preg_match, virker ik med linieskift?

Tags:    php

Hej..
Står med denne code:
Fold kodeboks ind/udKode 


Når den køres udskriver den:
"hmm intet fundet? :S"

men hvis $string ser sådan her ud:
Fold kodeboks ind/udKode 

så udskriver den:
"weee fundet! :D"

Så mit spørgsmål er.. hvorfor kan den ik se [kode] og [/kode] når der indgår linie skift?



Indlæg senest redigeret d. 12.06.2007 14:26 af Bruger #1742
8 svar postet i denne tråd vises herunder
2 indlæg har modtaget i alt 4 karma
Sorter efter stemmer Sorter efter dato

Det gjorde desværde ingen forskel? :S


Så tager vi da bare:
preg_match("/\\[kode\\](.+)\\[\\/kode\\]/s",$string, $results);

Det andet virkede også forkert... hæh.. :)



Indlæg senest redigeret d. 12.06.2007 14:55 af Bruger #10216
hmm... aner det ikke, du skulle nok prøve at skrive "[kode]" og "[/kode]" nede i din preg_match:
Fold kodeboks ind/udKode 

Ikke [code.][/code.] som her:
Fold kodeboks ind/udKode 




preg_match("/\\[kode\\](.+)\\[\\/kode\\]/m",$string, $results)

Bemærk m'et uden for regex-strengen.
http://dk2.php.net/manual/en/reference.pcre.pattern.modifiers.php



Indlæg senest redigeret d. 12.06.2007 14:35 af Bruger #10216
sorry jeg ik lige fik rettet det...
Det for at jeg normalt bruger code, men da udv.dk bruger det tag til at vise kode tænkte jeg at det ville fucke op...
men altså [kode] tagsne er ens...

Fold kodeboks ind/udKode 

Så er der ingen forviring



preg_match("/\\[kode\\](.+)\\[\\/kode\\]/m",$string, $results)

Bemærk m'et uden for regex-strengen.
http://dk2.php.net/manual/en/reference.pcre.pattern.modifiers.php


Det gjorde desværde ingen forskel? :S



Nogen med andre ideer til hvorfor den ik gider når der er linie skift?



Det virkede sku D:
kiggede ellers listen af modifiers igennem :D men må ha overset s som en mulighed :)
takker mange gange for alle svar...



Som tilføjelse vil jeg sige, at hvis du har brug for en regexp, der ikke skelner mellem store og små bogstaver, kan du bruge 'i' som modifier.



t