Hallo Zusammen...
Schnell einige klärende Worte:
Die Funktionen ereg_... und preg_... unterscheiden sich in
der Syntax des erwarteten Regulären Ausdruckes massiv!
Ich empfehle dem Programmierer für "standardfälle" klar die
preg (Voll Perl-Kompatible) Funktionen zu verwenden. Sie
sind meist auch in der Ausführung massiv schneller...
Das Problem Gross-Klein usw. Ist grundsätzlicher Natur:
Standardmässig unterscheidet preg Gross und Kleinschreibung.
Die Definition der Charakter-Klasse [A-Z] umfasst demnach
ausschliesslich Grossbuchstaben. Man verwende anstelle
[A-Za-z] (Sollte klappen..).
Im PHP-Manual findet man die Doku (für preg-Syntax) übrigends unter dem Schlagwort "Pattern Syntax" weiss man das nicht, wird man ewig suchen und kaum fündig.
Die elegantere lösung jedoch ist die verwendung der "Pattern Modifiers" (auch unter diesem Stichwort)
Man kamm damit definieren, dass der Reguläre ausdruck
CASE-Sensitive oder InSensitive ist. Modifiers werden
am Ende des Regulären ausdruckes gesetzt, NACH dem
abschliessenden Pattern-Zeichens. der Modifier "i" wird
Eure Beispiele oben auch für Gross/Klein funktionstüchtig machen.
Der Reguläre Ausdruck: "/([A-Z]){5,}/"
(Eigentlich heisst der Ausdruck selbst nur:
"([A-Z]){5,}" und die "/" Zu beginn und ende sind
Ein/Ausleitende Sequenzen, kann nun für die CASE-
Insensitivität so geschrieben werden:
"/([A-Z]){5,}/i"
Viel Spass dabei
Miro Dietiker