"Thomas Lindgaard" <thomas@dnspilot.com> skrev i en meddelelse
news:9p209c$1lei$1@news.cybercity.dk...
> Hejsa
>
> Jeg har et lille problem...
>
> Jeg har defineret nogle huller i en statisk HTML-side, som jeg skal
erstatte
> med noget dynamisk indhold. Hullerne ser som følger: [>HULNAVN<].
>
> Hvordan skal mit regulære udtryk se ud for at matche hullerne? Jeg har
> prøvet følgende:
Hejsa,
Du forvirrer dig selv med alle de paranteser osv., sådan her, så kan du også
fange værdien HULNAVN, hvis det skulle være interessant (ellers kan du
fjerne paranteserne rundt om .*?).
$string='HEJ [>HULNAVN<] hvordan går det';
print preg_replace("/\[>(.*?)<\]/", "bla "."\\1"." bla", $string);
den matcher [> efterfulgt af vilkårlige tegn, vilkårligt mange gange, men
pga. spørgsmålstegnet går den i non-gready-mode, dvs. den matcher kun indtil
det der kommer bagved matcher (hvilket i praksis betyder at den bliver ved
med at matche indtil der stødes på <]).
--
Mvh. Nezar Nielsen
http://fez.dk/