Freigeben über


Verwenden von regulären Ausdrücken mit dem MaskedTextBox-Steuerelement in Visual Basic

In diesem Beispiel wird veranschaulicht, wie einfache reguläre Ausdrücke konvertiert werden, um mit dem MaskedTextBox Steuerelement zu arbeiten.

Beschreibung der Maskierungssprache

Die Standardformatierungssprache MaskedTextBox basiert auf der von dem Masked Edit Steuerelement in Visual Basic 6.0 verwendeten Sprache und sollte den Benutzern vertraut sein, die von dieser Plattform migrieren.

Die Mask Eigenschaft des MaskedTextBox Steuerelements gibt an, welches Eingabeformat verwendet werden soll. Das Format muss eine Zeichenfolge sein, die aus mindestens einem der Maskierungselemente aus der folgenden Tabelle besteht.

Masking-Element BESCHREIBUNG Reguläres Ausdruckselement
0 Eine beliebige einzelne Ziffer zwischen 0 und 9. Eintrag erforderlich. \d
9 Ziffer oder Leerzeichen. Eintrag optional. [ \d]?
# Ziffer oder Leerzeichen. Eintrag optional. Wenn diese Position in der Maske leer bleibt, wird sie als Leerzeichen gerendert. Pluszeichen (+) und Minuszeichen (-) sind zulässig. [ \d+-]?
L ASCII-Buchstabe. Eintrag erforderlich. [a-zA-Z]
? ASCII-Buchstabe. Eintrag optional. [a-zA-Z]?
& Zeichen Eintrag erforderlich. [\p{Ll}\p{Lu}\p{Lt}\p{Lm}\p{Lo}]
C Zeichen Eintrag optional. [\p{Ll}\p{Lu}\p{Lt}\p{Lm}\p{Lo}]?
A Alphanumerisch. Eintrag optional. \W
. Kulturgerechte Dezimalplatzhalter. Nicht verfügbar.
, Platzhalter für kulturgerechte Tausender. Nicht verfügbar.
: Kulturgerechtes Zeittrennzeichen. Nicht verfügbar.
/ Kulturgerechtes Datumstrennzeichen. Nicht verfügbar.
$ Kulturgerechtes Währungssymbol. Nicht verfügbar.
< Konvertiert alle nachfolgenden Zeichen in Kleinbuchstaben. Nicht verfügbar.
> Konvertiert alle nachfolgenden Zeichen in Großbuchstaben. Nicht verfügbar.
| Rückgängigmachen einer vorherigen Schicht nach oben oder nach unten. Nicht verfügbar.
\ Escapet ein Maskenzeichen, wodurch es in ein Literal umgewandelt wird. "\\" ist die Escapesequenz für einen umgekehrten Schrägstrich. \
Alle anderen Zeichen Literale. Alle Elemente, die nicht maskieren, werden als sich selbst in MaskedTextBox angezeigt. Alle anderen Zeichen.

Die Dezimalzeichen (.), Tausendstel (,), Uhrzeit (:), Datum (/) und Währungssymbole ($) zeigen standardmäßig diese Symbole gemäß Definition der Kultur der Anwendung an. Sie können sie erzwingen, Symbole für eine andere Kultur mithilfe der FormatProvider Eigenschaft anzuzeigen.

Reguläre Ausdrücke und Masken

Obwohl Sie reguläre Ausdrücke und Masken verwenden können, um die Benutzereingabe zu überprüfen, sind sie nicht vollständig gleichwertig. Reguläre Ausdrücke können komplexere Muster als Masken ausdrücken, aber Masken können dieselben Informationen prägnant und in einem kulturell relevanten Format ausdrücken.

In der folgenden Tabelle werden vier reguläre Ausdrücke und die entsprechende Maske für die einzelnen Ausdrücke verglichen.

Regular Expression Mask Notizen
\d{2}/\d{2}/\d{4} 00/00/0000 Das / Zeichen in der Maske ist ein logisches Datumstrennzeichen, und es wird dem Benutzer als Datumstrennzeichen angezeigt, das für die aktuelle Kultur der Anwendung geeignet ist.
\d{2}-[A-Z][a-z]{2}-\d{4} 00->L<LL-0000 Ein Datum (Tag, Monatskürzel und Jahr) im US-Amerikanischen Format, in dem die Abkürzung für den Monat mit drei Buchstaben mit einem ersten Großbuchstaben angezeigt wird, gefolgt von zwei Kleinbuchstaben.
(\(\d{3}\)-)?\d{3}-d{4} (999)-000-0000 US-amerikanische Telefonnummer, Ortsvorwahl optional. Wenn der Benutzer die optionalen Zeichen nicht eingeben möchte, kann er entweder Leerzeichen eingeben oder den Mauszeiger direkt an der Position in der Maske platzieren, die durch die erste 0 dargestellt wird.
$\d{6}.00 $999,999.00 Ein Währungswert im Bereich von 0 bis 999999. Die Währungs-, Tausendstel- und Dezimalzeichen werden zur Laufzeit durch ihre kulturspezifischen Entsprechungen ersetzt.

Siehe auch