Gewusst wie: Validierung anhand von Mustern für ASP.NET-Serversteuerelemente
Aktualisiert: November 2007
Sie können prüfen, ob die Benutzereingabe mit einem vordefinierten Muster übereinstimmt, z. B. einer Telefonnummer, einer Postleitzahl, einer E-Mail-Adresse usw. Zu diesem Zweck verwenden Sie einen regulären Ausdruck. Weitere Informationen zu regulären Ausdrücken finden Sie unter Reguläre Ausdrücke von .NET Framework.
Sicherheitshinweis: |
---|
ASP.NET-Webseiten führen standardmäßig eine automatische Validierung durch, um zu verhindern, dass böswillige Benutzer Skripts oder HTML-Elemente an die Anwendung senden. Weitere Informationen finden Sie unter Übersicht über Skriptangriffe. |
So führen Sie eine Validierung anhand eines regulären Ausdrucks durch
Fügen Sie der Seite ein RegularExpressionValidator-Steuerelement hinzu, und legen Sie die folgenden Eigenschaften fest:
Eigenschaft
Beschreibung
Die ID des zu validierenden Steuerelements.
Eigenschaften, mit denen der Text sowie die Position der Fehler festgelegt werden, die beim Fehlschlagen der Validierung angezeigt werden. Ausführliche Informationen finden Sie unter Gewusst wie: Steuern der Anzeige von Validierungsfehlermeldungen für ASP.NET-Serversteuerelemente.
Legen Sie das Muster fest, das zum Vergleich herangezogen werden soll, indem Sie die ValidationExpression-Eigenschaft auf einen regulären Ausdruck festlegen.
Hinweis: Wenn Sie einen visuellen Designer wie Visual Studio .NET 2005 verwenden, können Sie aus den vordefinierten Mustern auswählen, die im RegularExpressionValidator-Steuerelement enthalten sind.
Wenn Sie mehrere gültige Muster zulassen möchten, trennen Sie die Ausdrücke mit einem senkrechten Strich (|).
Hinweis: Bei der clientseitigen Validierung werden reguläre Ausdrücke mit ECMAScript (JavaScript) ausgewertet. Dabei gibt es geringfügige Unterschiede zur serverseitigen Validierung mit regulären Ausdrücken.
Fügen Sie der ASP.NET-Webseite eine Testroutine hinzu, um die Gültigkeit zu prüfen. Ausführliche Informationen finden Sie unter Gewusst wie: Programmgesteuertes Testen der Validierung für ASP.NET-Serversteuerelemente.
Das folgende Codebeispiel zeigt, wie Sie mit dem RegularExpressionValidator-Steuerelement prüfen können, ob die Benutzer eine in den USA gültige Postleitzahl eingegeben haben. Es wird auf zwei Muster überprüft: fünf Ziffern und fünf Ziffern plus ein Bindestrich plus vier weitere Ziffern.
ZIP: <asp:TextBox id="txtZIP" runat="SERVER"></asp:TextBox> <asp:RegularExpressionValidator id="txtZIP_validation" runat="SERVER" ControlToValidate="txtZIP" ErrorMessage="Enter a valid US ZIP code." ValidationExpression="\d{5}(-\d{4})?"> </asp:RegularExpressionValidator>
ZIP: <asp:TextBox id="txtZIP" runat="SERVER"></asp:TextBox> <asp:RegularExpressionValidator id="txtZIP_validation" runat="SERVER" ControlToValidate="txtZIP" ErrorMessage="Enter a valid US ZIP code." ValidationExpression="\d{5}(-\d{4})?"> </asp:RegularExpressionValidator>
Siehe auch
Konzepte
Arten der Validierung für ASP.NET-Serversteuerelemente