Eingaben, die durch Benutzer auf der Webseite in Formularen gemacht werden, können neben den Standardvalidatoren auch über Reguläre Ausdrücke validiert werden. Dadurch haben Sie die Möglichkeit, jeden beliebigen Validator selbst zu definieren.
Neben den Standardvalidatoren, wie z.B. required, email oder isoDate stehen Ihnen auch folgende Validatoren, zur Prüfung über Reguläre Ausdrücke zur Verfügung:
- pregMatch('REGEXP')
Dieser Validator prüft, ob die Eingabe dem definierten Regulären Ausdruck entspricht und berücksichtigt dabei die Groß-/Kleinschreibung. - pregiMatch('REGEXP')
Dieser Validator prüft, ob die Eingabe dem definierten Regulären Ausdruck entspricht, ohne dabei die Groß-/Kleinschreibung zu berücksichtigen. - preguMatch('REGEXP')
Dieser Validator prüft, ob die Eingabe dem definierten Regulären Ausdruck
entspricht, berücksichtigt dabei die Groß-/Kleinschreibung und behandelt die zu prüfenden Zeichenketten als UTF-8.
(verfügbar ab CMS-Version 016.002.001.000) - pregiuMatch('REGEXP')
Dieser Validator prüft, ob die Eingabe dem definierten Regulären Ausdruck
entspricht, ohne dabei die Groß-/Kleinschreibung zu berücksichtigen und behandelt die zu prüfenden Zeichenketten als UTF-8.
(verfügbar ab CMS-Version 016.002.001.000)
- pregMatchOrEmpty('REGEXP')
Dieser Validator prüft, ob die Eingabe dem definierten Regulären Ausdruck entspricht oder leer ist und berücksichtigt dabei die Groß-/Kleinschreibung - pregiMatchOrEmpty('REGEXP')
Dieser Validator prüft, ob die Eingabe dem definierten Regulären Ausdruck entspricht oder leer ist, ohne dabei die Groß-/Kleinschreibung zu berücksichtigen - !pregMatch('REGEXP')
Dieser Validator prüft, ob die Eingabe dem
definierten Regulären Ausdruck nicht entspricht und berücksichtigt dabei die
Groß-/Kleinschreibung - !pregiMatch('REGEXP')
Dieser
Validator prüft, ob die Eingabe dem definierten Regulären Ausdruck
nicht entspricht, ohne dabei die Groß-/Kleinschreibung zu berücksichtigen - !preguMatch('REGEXP')
Dieser Validator prüft, ob die Eingabe dem definierten Regulären Ausdruck
nicht entspricht, berücksichtigt dabei die Groß-/Kleinschreibung und behandelt die zu prüfenden Zeichenketten als UTF-8.
(verfügbar ab CMS-Version 016.002.001.000) - !pregiuMatch('REGEXP')
Dieser Validator prüft, ob die Eingabe dem definierten Regulären Ausdruck
nicht entspricht, ohne dabei die Groß-/Kleinschreibung zu berücksichtigen und behandelt die zu prüfenden Zeichenketten als UTF-8.
(verfügbar ab CMS-Version 016.002.001.000) - callback:wMyProject::validateInput
Dieser Validator prüft über Callback und die in wMyProject.php hinterlegte Funktion (im Beispiel validateInput) auf die dort definierten Regeln.
Weitere Validatoren:
- isEqualInput(FELDNAME)
Dieser Validator prüft, ob die Eingabe im Feld dem in Klammer angegebenen anderen Feld entspricht.
Dies kann z.B. zum Abgleich von Feldern mit E-Mail Adressen oder Passwörtern nützlich sein.
- Prüfen, ob die Eingabe ein deutsches Datum ist
pregMatch('^\d\d\.\d\d\.\d\d\d\d$') - Prüfen, ob die Eingabe leer oder ein deutsches Datum ist
pregMatch('^(\d\d\.\d\d\.\d\d\d\d)?$') - Prüfen, ob die Eingabe mit http:// oder https:// beginnt
pregMatch('^https?\:\/\/') - Prüfen, ob ein Feld nicht leer ist oder die Eingabe ohne http:// oder https:// beginnt
!pregiMatch('^(|https?\:\/\/.*)$') - Prüfen, ob die Eingabe leer oder nur bestimmte Zeichen enthält (http(s):// daher nicht möglich)
pregiMatch('^(|[a-zA-Z0-9\-\.\:]+)$')
- Prüfen, ob der Satz "Ich stimme zu" eingegeben wurde
pregiMatch('ich\s+stimme\s+zu') - Prüfen, ob die Eingabe keine Großbuchstaben enthält
!pregMatch('[A-Z]') - Prüfen, ob die Eingabe kein Markup enthält
!pregMatch('<|>') - Prüft, ob eine beliebige Ganzzahl (einmal oder beliebig oft) eingegeben wurde
pregMatch('^\d+$')
- Prüft, ob eine 4- oder 5-stellige Ziffer (z.B. Postleitzahl) eingegeben wurde
pregMatch('^\d{4,5}$') - Prüft, ob die Eingabe leer oder eine 5-stellige Ziffer (z.B. Postleitzahl) ist
pregMatch('^(|\d{4,5})$') - Prüfen, ob eine 13-stellige Ziffer eingegeben wurde
pregiMatch('^\d{13}$') - Prüfen, ob eine Ganzzahl von 0 bis 4 eingegeben wurde
pregMatch('^[0-4]$') - Prüfen, ob eine Ganzzahl mit Mindestwert 50 eingegeben wurde
pregMatch('^(50|[5-9][0-9]|[1-9][0-9]{2,})$')
(z.B. für Formularfelder nützlich, welche eine Mindestbestellwert für Gutscheine erfordern (z.B. 50 Euro))
- Prüfen, ob eine Telefonnummer eingegeben wurde (z.B. +49 123-4567 oder +49 123 4567)
pregMatch('^\+\d(?:[\s\-]?\d+)*$')
Die Telefonnummer muß mit einem Plus-Zeichen beginnen und darf dann nur Zahlen, Leerzeichen und Bindestriche enthalten (mehrere aufeinanderfolgende Leerzeichen sind nicht erlaubt).
Zu beachten ist, dass diese einfache RegEx-Überprüfung keine Aussagen darüber macht, ob die Telefonnummer tatsächlich existiert oder eine realistische Formatierung aufweist – sie prüft nur die allgemeine Struktur basierend auf den Vorgaben. - Prüfen, ob ein Name eingegeben wurde
pregiuMatch('^[\p{L}\s'-]+$')
Zu beachten ist, dass es spezielle Fälle oder kulturelle Unterschiede geben kann, die
besondere Zeichen in Namen erlauben und somit individuell berücksichtigt werden müssen.
Sollten Sie einen speziellen Validator benötigen, helfen wir Ihnen gerne, diesen zu definieren.