Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
In questo esempio viene illustrato come convertire semplici espressioni regolari in modo che funzionino con il MaskedTextBox controllo .
Descrizione del linguaggio di maschera
Il linguaggio di maschera standard MaskedTextBox è basato su quello usato dal Masked Edit controllo in Visual Basic 6.0 e deve essere familiare agli utenti che eseguono la migrazione da tale piattaforma.
La Mask proprietà del MaskedTextBox controllo specifica quale maschera di input utilizzare. La maschera deve essere una stringa composta da uno o più elementi di maschera della tabella seguente.
| Elemento di mascheramento | Descrizione | Elemento delle espressioni regolari |
|---|---|---|
| 0 | Qualsiasi singola cifra compresa tra 0 e 9. Campo obbligatorio. | \d |
| 9 | Cifra o spazio. Voce facoltativa. | [ \d]? |
| # | Cifra o spazio. Voce facoltativa. Se questa posizione viene lasciata vuota nella maschera, verrà reso come uno spazio. Sono consentiti segni più (+) e meno (-). | [ \d+-]? |
| L | Lettera ASCII. Campo obbligatorio. | [a-zA-Z] |
| ? | Lettera ASCII. Voce facoltativa. | [a-zA-Z]? |
| & | Carattere. Campo obbligatorio. | [\p{Ll}\p{Lu}\p{Lt}\p{Lm}\p{Lo}] |
| C | Carattere. Voce facoltativa. | [\p{Ll}\p{Lu}\p{Lt}\p{Lm}\p{Lo}]? |
| Un | Alfanumerico. Voce facoltativa. | \W |
| . | Segnaposto decimale adeguato alla cultura. | Non disponibile. |
| , | Segnaposto migliaia appropriate per le impostazioni cultura. | Non disponibile. |
| : | Separatore orario appropriato per la cultura. | Non disponibile. |
| / | Separatore di data appropriato per la cultura | Non disponibile. |
| $ | Simbolo di valuta appropriato per il contesto culturale. | Non disponibile. |
| < | Converte tutti i caratteri che seguono in lettere minuscole. | Non disponibile. |
| > | Converte tutti i caratteri che seguono in maiuscolo. | Non disponibile. |
| | | Annulla uno spostamento precedente verso l'alto o verso il basso. | Non disponibile. |
| \ | Esegue l'escape di un carattere di maschera, trasformandolo in un carattere letterale. "\\" è la sequenza di escape per una barra rovesciata (backslash). | \ |
| Tutti gli altri caratteri. | Valori letterali. Tutti gli elementi non maschera verranno visualizzati come se stessi all'interno di MaskedTextBox. | Tutti gli altri caratteri. |
I simboli decimali (.), millesimi (,), ora (:), data (/) e valuta ($) vengono visualizzati per impostazione predefinita come definito dalle impostazioni cultura dell'applicazione. È possibile forzarli a visualizzare i simboli per altre impostazioni culturali usando le FormatProvider proprietà.
Espressioni regolari e maschere
Sebbene sia possibile usare espressioni regolari e maschere per convalidare l'input dell'utente, non sono completamente equivalenti. Le espressioni regolari possono esprimere modelli più complessi rispetto alle maschere, ma le maschere possono esprimere le stesse informazioni in modo più conciso e in un formato culturalmente rilevante.
Nella tabella seguente vengono confrontate quattro espressioni regolari e la maschera equivalente per ognuna.
| Espressione regolare | Maschera | Note |
|---|---|---|
\d{2}/\d{2}/\d{4} |
00/00/0000 |
Il / carattere nella maschera è un separatore di data logico e verrà visualizzato come un separatore di data adatto alle impostazioni culturali correnti dell'applicazione. |
\d{2}-[A-Z][a-z]{2}-\d{4} |
00->L<LL-0000 |
Data (giorno, abbreviazione del mese e anno) in formato Stati Uniti in cui l'abbreviazione del mese di tre lettere viene visualizzata con una lettera maiuscola iniziale seguita da due lettere minuscole. |
(\(\d{3}\)-)?\d{3}-d{4} |
(999)-000-0000 |
Numero di telefono degli Stati Uniti, codice di area facoltativo. Se l'utente non desidera immettere i caratteri facoltativi, può immettere spazi o posizionare il puntatore del mouse direttamente nella posizione nella maschera rappresentata dal primo 0. |
$\d{6}.00 |
$999,999.00 |
Valore di valuta compreso nell'intervallo compreso tra 0 e 999999. La valuta, il millesimo e i caratteri decimali verranno sostituiti in fase di esecuzione con i loro equivalenti specifici culturali. |
Vedere anche
- Mask
- MaskedTextBox
- Convalida di stringhe in Visual Basic
- del controllo MaskedTextBox