Christian Kruse: Script zu langsam: preg_match...

Beitrag lesen

Hallo tester,

[...]
preg_match("°(.*?);(.*?);(.*?);(.*?);(.*?);(.*?);(.*?);(.*?);(.*?);(.*?);(.*?);(.*?);(.*?);(.*?);(.*?);(.*?)\r\n°s",$datei_zeile,$arr_content_zeile);
[...]
was könnte ich schreiben, um exakt das selbe ergebnis in dem
ergebniss array $arr_content_zeile zu erhalten?

Wesentlich schneller (da keine Endlos-Schleife):

~([^;]*);([^;]*);([^;]*);([^;]*);([^;]*);([^;]*);([^;]*);([^;]*);([^;]*);([^;]*);([^;]*);([^;]*);([^;]*);([^;]*);([^;]*);([^;]*)\r\n

Wenn du das * noch in ein + umwandeln kannst, wird es nochmal
schneller, da der Automat dann noch eher terminieren kann. Ansonsten
sieht es mir eher nach einer Aufgabe fuer split() aus als fuer
Regexe. Ein split(';',$datei_zeile) mit einer anschliessenden
Pruefung auf die Laenge ist wesentlich schneller, da kein Pattern
matching angewendet werden muss.

Grüße,
 CK

--
Beware Evildoers for my deed is done and every little damsel in distress will be shelted!
http://wwwtech.de/