Dela via


Använda reguljära uttryck med kontrollen MaskedTextBox i Visual Basic

Det här exemplet visar hur du konverterar enkla reguljära uttryck för att arbeta med MaskedTextBox kontrollen.

Beskrivning av maskeringsspråket

Standardmaskeringsspråket MaskedTextBox baseras på det som används av kontrollen i Visual Basic 6.0 och bör vara bekant för användare som migrerar från den Masked Edit plattformen.

Kontrollens MaskMaskedTextBox egenskap anger vilken indatamask som ska användas. Masken måste vara en sträng som består av ett eller flera av maskeringselementen från följande tabell.

Maskeringselement beskrivning Element för reguljärt uttryck
0 En siffra mellan 0 och 9. Post krävs. \D
9 Siffra eller blanksteg. Valfri post. [ \d]?
# Siffra eller blanksteg. Valfri post. Om den här positionen lämnas tom i masken återges den som ett blanksteg. Plustecken (+) och minustecken (-) tillåts. [ \d+-]?
L ASCII-bokstav. Post krävs. [a-zA-Z]
? ASCII-bokstav. Valfri post. [a-zA-Z]?
& Karaktär. Post krävs. [\p{Ll}\p{Lu}\p{Lt}\p{Lm}\p{Lo}]
C Karaktär. Valfri post. [\p{Ll}\p{Lu}\p{Lt}\p{Lm}\p{Lo}]?
A Alfanumeriska. Valfri post. \W
. Platshållare för kulturanpassade decimaler. Ej tillgänglig.
, Platshållare för kulturanpassade tusentals. Ej tillgänglig.
: Kulturanpassad tidsavgränsare. Ej tillgänglig.
/ Kulturanpassad datumavgränsare. Ej tillgänglig.
$ Kulturanpassad valutasymbol. Ej tillgänglig.
< Konverterar alla tecken som följer till gemener. Ej tillgänglig.
> Konverterar alla tecken som följer till versaler. Ej tillgänglig.
| Ångrar ett tidigare skift upp eller ned. Ej tillgänglig.
\ Undflyr ett masktecken och omvandlar det till en literal. "\\" är escape-sekvensen för ett omvänt snedstreck. \
Alla andra tecken. Litteraler. Alla icke-maskerade element visas som sig själva i MaskedTextBox. Alla andra tecken.

Decimalsymbolerna (.), tusendelar (,), tid (:), datum (/) och valuta ($) är standard för att visa dessa symboler enligt definitionen i programmets kultur. Du kan tvinga dem att visa symboler för en annan kultur med hjälp FormatProvider av egenskapen .

Reguljära uttryck och masker

Även om du kan använda reguljära uttryck och masker för att verifiera användarindata är de inte helt likvärdiga. Reguljära uttryck kan uttrycka mer komplexa mönster än masker, men masker kan uttrycka samma information mer kortfattat och i ett kulturellt relevant format.

I följande tabell jämförs fyra reguljära uttryck och motsvarande mask för var och en.

Reguljärt uttryck Mask Kommentar
\d{2}/\d{2}/\d{4} 00/00/0000 Tecknet / i masken är en logisk datumavgränsare och visas för användaren som den datumavgränsare som är lämplig för programmets aktuella kultur.
\d{2}-[A-Z][a-z]{2}-\d{4} 00->L<LL-0000 Ett datum (dag, månadsförkortning och år) i USA format där förkortningen med tre bokstäver visas med en inledande versal följt av två gemener.
(\(\d{3}\)-)?\d{3}-d{4} (999)-000-0000 USA telefonnummer, riktnummer valfritt. Om användaren inte vill ange de valfria tecknen kan de antingen ange blanksteg eller placera pekaren direkt på positionen i masken som representeras av de första 0.
$\d{6}.00 $999,999.00 Ett valutavärde i intervallet 0 till 999999. Valuta, tusendel och decimaltecken ersätts vid körning med deras kulturspecifika motsvarigheter.

Se även