Beispiel für einen regulären Ausdruck von Spring EL
Spring EL unterstützt reguläre Ausdrücke mit einem einfachen Schlüsselwort „matches“, was wirklich großartig ist! Zum Beispiel,
@Value("#{'100' matches '\\d+' }") private boolean isDigit;
Über den regulären Ausdruck "\d+" wird geprüft, ob "100" eine gültige Ziffer ist.
Frühling EL in der Anmerkung
Siehe die folgenden Beispiele für reguläre Ausdrücke von Spring EL, einige davon gemischt mit ternären Operatoren, wodurch Spring EL ziemlich flexibel und leistungsstark ist.
Das folgende Beispiel sollte selbsterklärend sein.
package com.example.core; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; @Component("customerBean") public class Customer { // email regular expression String emailRegEx = "^[_A-Za-z0-9-]+(\\.[_A-Za-z0-9-]+)" + "*@[A-Za-z0-9]+(\\.[A-Za-z0-9]+)*(\\.[A-Za-z]{2,})$"; // if this is a digit? @Value("#{'100' matches '\\d+' }") private boolean validDigit; // if this is a digit + ternary operator @Value("#{ ('100' matches '\\d+') == true ? " + "'yes this is digit' : 'No this is not a digit' }") private String msg; // if this emailBean.emailAddress contains a valid email address? @Value("#{emailBean.emailAddress matches customerBean.emailRegEx}") private boolean validEmail; //getter and setter methods, and constructor }
package com.example.core; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; @Component("emailBean") public class Email { @Value("[email protected]") String emailAddress; //... }
Ausgabe
Customer [isDigit=true, msg=yes this is digit, isValidEmail=true]
Spring EL in XML
Siehe äquivalente Version in der Bean-Definitions-XML-Datei.
Quellcode herunterladen
Laden Sie es herunter -Spring3-EL-Regular-Expression-Example.zip (6 KB)