phpbar.de logo

Mailinglisten-Archive

[php] Preg_match_all optimierung...

[php] Preg_match_all optimierung...

Andreas Heigl a.heigl at wdv.de
Die Jan 11 08:51:24 CET 2005


Michael Schoenboeck schrieb:

> Moin,
> 
> Is ja ein sehr heufiges thema mit den preg's :)
> 
> Also ich hab mein pattern schon. Und nur fehlen mir ein paar optimierungen.
> Hier der pattern:
> preg_match_all('/\/\/LOOP_DB->(.+)\'\/\/(.+)\/\/NEXT_LOOP\/\/(.+)\/\/END_LOO
> P\/\//is',$templ, $templ2);
...
> Wenn ich das suchmuster nur einmal im zu suchenden text habe klappt es,
> jedoch wenn ich mehrere drinn hab, bekomm ich alles innerhalb des ersten
> LOOP_DB und des letzten END_LOOP
> 
> Ich denke ich muss da nur einen modifikator anders setzen das er schon ein
> array mit dem ersten auffinden des suchmusters macht und dann neu sucht.
> 
Setz mal ein ? hinter das +

/\/\/LOOP_DB->(.+?)\'\/\/(.+?)\/\/NEXT_LOOP\/\/(.+?)\/\/END_LOOP\/\//is

Dass verhindert die 'gier' von Quantifikatoren. Alternativ ein 'U' als
Modifikator.

http://www.php.net/manual/de/reference.pcre.pattern.modifiers.php

Grüße

Andreas
-- 

wdv Medien & Kommunikation GmbH & Co. OHG
Mediendatenverarbeitung
Andreas Heigl
Siemensstrasse 6
61352 Bad Homburg
Germany
Telefon +49-(0)6172-670-185
Telefax +49-(0)6172-670-181
www.wdv.de



php::bar PHP Wiki   -   Listenarchive