joeker
Goto Top

Regulärer Ausdruck für Anzahl bestimmter Buchstaben

Hallo, ich tüftel schon eine lange Zeit an einem kleinen Programm, das Dezimalzahlen in römische Zahlen umwandeln soll und umgekehrt. Das eigentliche Umrechnen funktioniert schon längst, aber bei der Prüfung der Benutzereingaben haperts etwas.
Ich bin gerade dabei herauszufinden, wie man mithilfe von regulären Ausdrücken einen Buchstaben (z.B. "I") zählt und prüft wo es sich gerade befindet.

Folgenden AUsdruck habe ich estellt:
preg_match("/([I]{3,})|([XV](i{1,}))/", $value, $max_i);

das "I" darf insgesamt 3 mal und maximal 1 mal hinter V bzw. X stehen, ansonsten ist die Eingabe inkorrekt. Dieser Ausdruck klappt leider nicht, wie ich es mir wünsche, deshalb wollte ich euch um Hilfe bitten.
Meint ihr, ich sollte pro Anweisung eine preg_match-Funktion verwenden oder mehrere?!


Danke im vorraus!

Content-ID: 103153

Url: https://administrator.de/forum/regulaerer-ausdruck-fuer-anzahl-bestimmter-buchstaben-103153.html

Ausgedruckt am: 23.12.2024 um 01:12 Uhr

Saneke
Saneke 08.12.2008 um 13:42:12 Uhr
Goto Top
ich würde das problem vollkommen anderst angehen.
zuerst mit "substr" aufteilen in einzelne variablen, oder in ein array. danach die überprüfung starten.

gruss Dani
joeker
joeker 08.12.2008 um 16:55:37 Uhr
Goto Top
Das habe ich mir auch schon überlegt, doch wie soll man prüfen, welcher Buchstabe vor einem oder nach einem ist.
Und außerdem habe ich das Problem mit der Anzahl schon behoben, aber leider kommen immer weitere Probleme auf... sind nur schwierig zu beschreiben ;)

Trotzdem danke!