Betrifft: Seite / Element
Validierungen dienen zur Überprüfung der gemachten Angaben. Validierungen können unter dem Bereich / Tab "Validierung" der Feldeigenschaften definiert werden.
Klassifizierung
Meistens als Fehler, damit das "Absenden" der nicht korrekt validierten Daten nicht erfolgen kann.
Wird diese Option gewählt, muss die Formel manuell erfasst werden. Dies lässt mehr Freiheit zu. Ohne JEP können die Bedingungen zusammengeklickt werden.
Die Formel muss in der JEP Syntax manuell eingegeben werden.
Wizard verwenden
Beim Wizard werden die Bedingung zusammengeklickt. Gleiche Logik wie bei Sichtbarkeit.
Fehlermeldung erfassen
Beispiele von REXEX Validierungen
Verwenden einer Regex
Im Feld "JEP Syntax" wird die entsprechende Formel eingegeben: nodeValue(".") != null && !matchesRegEx("REXEX",nodeValue("."))
Beipsiel E-Mail-Adresse: nodeValue(".") != NULL && !matchesRegEx("^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(\\.[a-zA-Z0-9-]+)*$")
Beispiel UID (Firmennummer): nodeValue(".") != null && !matchesRegEx("(CHE-)[0-9]{3}[.][0-9]{3}[.][0-9]{3}",nodeValue("."))
Beispiel AHV13: nodeValue(".") != null && !matchesRegEx("[0-9]{3}[.]{1}[0-9]{4}[.]{1}[0-9]{4}[.]{1}[0-9]{2}",nodeValue("."))
Beispiel IBAN: nodeValue(".") != null && !matchesRegEx("[a-zA-Z]{2}[0-9]{2}[a-zA-Z0-9]{4}[0-9]{7}([a-zA-Z0-9]?){0,16}",nodeValue("."))
Beilspiel E-Mail-Adressen welche eine bestimmte Domain enthalten (Beispiel Kt. BE):
nodeValue(".") != null && !matchesRegEx("^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@+([a-zA-Z][a-zA-Z][a-zA-Z]\\.be|be|police\\.be|justice\\.be|fk\\.be|bfh|phbern|[a-zA-Z]{2,20}\\.unibe|unibe|lwb|bbz-biel|tfbern|gymkirchenfeld|gymneufeld|koeniz-lerbermatt|gymhofwil|gymbiel-seeland|gfbienne|gymburgdorf|bzl|gyminterlaken|gymthun|upd|ceff|pzmag|bzemme)\\.ch$",nodeValue("."))
Beispiel Telefonnummer: nodeValue(".") != null && !matchesRegEx("^([+]|[0])((\\d|[ /-]){9,15})$",nodeValue("."))
(String + @ + (kantons-url) .ch am Ende)
Vom System definierte REGEX Konstanten:
REGEX_EMAIL | [a-zA-Z0-9]+[._a-zA-Z0-9!#$%&'*+-/=?^_`{|}~]*[a-zA-Z]*@[a-zA-Z0-9]{2,8}.[a-zA-Z.]{2,6} |
REGEX_SWISS_PHONE | ^([+]|[0])((\d|[ /-]){9,15})$ |
Verwendung: matchesRegEx(<Schlüssel>,nodeValue("."))
Beispiel: nodeValue(".") != null && !matchesRegEx(REGEX_EMAIL,nodeValue("."))
Tutorial
JAVA RegularExpressions > http://www.vogella.com/tutorials/JavaRegularExpressions/article.html