regular-expressions & php

Seite 1 von 1 - Forum: Coding Stuff auf overclockers.at

URL: https://www.overclockers.at/coding-stuff/regular-expressions_amp_php_51638/page_1 - zur Vollversion wechseln!


watchout schrieb am 14.10.2002 um 01:25

also, bis jetzt hab' ich mich noch nie mit regexp näher beschäftigt...
jetzt hab ich aber hier ein (schirches) stück code, welches ganz laut "OPTIMIERUNG" ruft, und das ein newsboard ist, welches bb-code unterstützt...

nun meine fragen:
1. brauchen regexp-funktionen einen double-quoted string?
2. wenn sie keinen double-quoted string brauchen, is' dann ein performance-unterschied zw. single und double?
3. sind funktionen wie ereg_replace, eregi_replace SCHNELLER als str_replace? (ich weiss dass str_replace keine regexp unterstützt, aber der code ist schon vorhanden....)
4. es gibt einen codeteil in besagtem code einen teil, wo eben die einzelnen bb-codes durch html-codes ersetzt werden, dort wird aber jeder einzelne bb-code einzeln abgehandelt, ist es nun besser, wenn ich das alles in einem erledige, oder zumindest die einfachen wie [ b ], [ i ] usw...?

mehr fragen vielleicht später.... :)


Ringding schrieb am 14.10.2002 um 12:00

Zitat von watchout
3. sind funktionen wie ereg_replace, eregi_replace SCHNELLER als str_replace? (ich weiss dass str_replace keine regexp unterstützt, aber der code ist schon vorhanden....)
4. es gibt einen codeteil in besagtem code einen teil, wo eben die einzelnen bb-codes durch html-codes ersetzt werden, dort wird aber jeder einzelne bb-code einzeln abgehandelt, ist es nun besser, wenn ich das alles in einem erledige, oder zumindest die einfachen wie [ b ], [ i ] usw...?

Die Funktionen sind auf jeden Fall sehr schnell. Und je mehr du auf einmal machen kannst, um so besser ist es.


bernhard schrieb am 14.10.2002 um 17:24

Zitat

1. brauchen regexp-funktionen einen double-quoted string?
2. [...] is' dann ein performance-unterschied zw. single und double?
3. sind funktionen wie ereg_replace, eregi_replace SCHNELLER als str_replace?
4. [...] ist es nun besser, wenn ich das alles in einem erledige

ad 1) Nicht notwendigerweise.
ad 2) Immer.
ad 3) Laut php.net ist preg_* noch schneller.
ad 4) Wie willst Du das anstellen?


watchout schrieb am 14.10.2002 um 17:46

Zitat von bernhard
ad 4) Wie willst Du das anstellen?
mit variablen


funka schrieb am 15.10.2002 um 11:35

str_replace is das schnellste (dann preg) - never use ereg!

der performance unterschied zwischen " udn ' strings is minimal
bei regex machts perf. keinen zusaetzlichen unterschied


watchout schrieb am 15.10.2002 um 19:15

Zitat von funka
str_replace is das schnellste (dann preg) - never use ereg!

der performance unterschied zwischen " udn ' strings is minimal
bei regex machts perf. keinen zusaetzlichen unterschied
hmm, das " zu ' machen hat bei einem script von mir ca 30% performance-schub gebracht, und wenn du das newsboard sehen tät'st, wo strings wie "$var" vorkommen, und das 50 mal, dann strings wie "plain" und das ca 300 mal - dann denke ich siehst du in diesem bereich auch performance-schwächen :D

why never use ereg? weil so lahm is' oder is' was anderes...? ich hab sowieso nie den unterschied gechecked...


funka schrieb am 15.10.2002 um 19:44

die regex engine is einfach wesentlcih langsamer als die von pcre (p-reg...)
das mit den 30% kann ich mir nicht vorstellen
aber ansich hast schon irgendwie recht


watchout schrieb am 16.10.2002 um 19:16

Zitat von funka
das mit den 30% kann ich mir nicht vorstellen
naja - is' schon ein etwas älteres script, da hab ich zwar gwusst, dass es einen untershied gibt, aber das da die performance auch reinspielt hab ich nicht behirnt....

ein
$var="";
war in einer schleife, die so ca 100 mal gelaufen is'


Edit: Auf jeden Fall grosses THX für die hilfe :)




overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2025