Hi Axel,
(Sorry, hatte Dein Posting ganz übersehen; ich hatte schon gedacht, dass keiner mahr antworten mag.)
*g* Ja, wie gesagt, ich hatte bisher das Glück, bei soetwas nie auf die unperformanten RegExp angewiesen zu sein (Bist Du sicher, dass man das nicht, je nach Programmiersprache, mit Klassen bzw. Subroutinen oder Funktionen besser lösen kann?). Meine Lösung waren/(konnten sein) bisher immer die Klassen aus java.net.
Stimmt schon, der Engine muss halt angeschmissen werden. Andererseits: Klassen müssen auch erstmal geladen werden (Bei Java kenn ich mich allerdings nicht so aus; die Leute da sind, was die Einbindung von vorkompilierten Codes betrifft, natürlich Spezialisten.)
Bei PHP kann man sich, wenn das Ganze möglichst plattformübergreifend sein soll, jedenfalls nicht darauf verlassen, dass die entsprechenden PEAR-Klassen auf dem Server auch vorhanden sind...
Aber die Performance von Regexen hängt meinen Erfahrungen sehr von ihrer Bauart ab. Bei komplizierteren zu prüfenden Inhalten (und eine E-Mail-Adresse beispielsweise _ist_ kompliziert, das sie eine Menge Informationen auf sehr engem Raum enthält) brauch man, wenn mans stattdessen über Funktionen löst, ja auch eine gewisse Anzahl an Subroutinen, die dann ja auch alle erstmal geladen werden müssen.
Ich hab bei einer anderen Gelegenheit auch schon mal Performance-Vergleiche zwischen einer Regex und einer funktionalen Lösung mit entsprechenden PHP-String-Funktionen gemacht. Wenn man da z.B. strspn und strcspn verwendet, dann ist die Regex unter Umständen sogar noch schneller ;-)
Herzliche Grüße,
Hendrik