Formulareingaben über Reguläre Ausdrücke validieren

Nutzbar ab: Version 005.059.038.001

09. Dez 2010

Eingaben, die durch Benutzer auf der Webseite in Formularen gemacht werden, können neben den Standardvalidatoren auch über Reguläre Ausdrücke validiert werden.

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
  • 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

Beispiele für Validatoren mit Regulären Ausdrücken

  • 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 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}$')

Sollten Sie einen speziellen Validator benötigen, helfen wir Ihnen gerne, diesen zu definieren.

Beispiele für Validatoren mit Regulären Ausdrücken im Formularquelltext

Beispiel 1: Wert darf im Feld nicht vorkommen

<!--
  Auszug aus kontakt/index.php:
  Versand ist nur möglich, wenn im Feld Nachname (lastname) nicht "mustermann" eingegeben wurde.
-->
...
<wd:fragment id="serverEventOnBeforeBuild" type="text.script">
<![CDATA[$this->elements['lastname']->validators[0]['type'] = "!pregiMatch('mustermann')";
$this->elements['lastname']->validators[0]['errorMessage'] = "Dieser Begriff darf nicht angegeben werden!";]]>
</wd:fragment>
...

Hinweise

Das Formular-Weblic® unterstützt ab Version 002.000.124.000 das Setzen eines eigenen Validators (als RegEx) über den Formulareditor zum Feld "Vorgaben".
z.B.: Eigener Validator: !pregiMatch('mustermann')

Entwicklerbereich Weblication® CMS - © Scholl Communications AG