Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este exemplo demonstra como converter expressões regulares simples para trabalhar com o MaskedTextBox controle.
Descrição da Linguagem de Mascaramento
A linguagem de mascaramento padrão MaskedTextBox é baseada na usada pelo Masked Edit
controle no Visual Basic 6.0 e deve ser familiar para os usuários que migram dessa plataforma.
A Mask propriedade do MaskedTextBox controle especifica qual máscara de entrada usar. A máscara deve ser uma cadeia de caracteres composta por um ou mais dos elementos de mascaramento da tabela a seguir.
Elemento de Mascaramento | Descrição | Elemento de expressão regular |
---|---|---|
0 | Qualquer dígito único entre 0 e 9. Entrada necessária. | \d |
9 | Dígito ou espaço. Entrada opcional. | [ \d]? |
# | Dígito ou espaço. Entrada opcional. Se essa posição for deixada em branco na máscara, ela será renderizada como um espaço. Mais (+) e menos (-) sinais são permitidos. | [ \d+-]? |
L | Letra ASCII. Entrada necessária. | [a-zA-Z] |
? | Letra ASCII. Entrada opcional. | [a-zA-Z]? |
& | Personagem. Entrada necessária. | [\p{Ll}\p{Lu}\p{Lt}\p{Lm}\p{Lo}] |
C | Personagem. Entrada opcional. | [\p{Ll}\p{Lu}\p{Lt}\p{Lm}\p{Lo}]? |
Um | Alfanumérico. Entrada opcional. | \W |
. | Espaço reservado decimal apropriado à cultura. | Não disponível. |
, | Espaço reservado para milhares apropriados à cultura. | Não disponível. |
: | Separador de tempo apropriado à cultura. | Não disponível. |
/ | Separador de data apropriado à cultura. | Não disponível. |
$ | Símbolo de moeda apropriado à cultura. | Não disponível. |
< | Converte todos os caracteres que seguem em letras minúsculas. | Não disponível. |
> | Converte todos os caracteres que seguem em letras maiúsculas. | Não disponível. |
| | Desfaz um deslocamento anterior para cima ou para baixo. | Não disponível. |
\ | Ignora qualquer caractere, transformando-o em um literal. "\\" é a sequência de escape de uma barra invertida. | \ |
Todos os outros caracteres. | Literais Todos os elementos que não são máscaras aparecerão como eles mesmos dentro MaskedTextBox. | Todos os outros caracteres. |
Os símbolos decimal (.), milésimos (,), hora (:), data (/) e moeda ($) são padrão para exibir esses símbolos conforme definido pela cultura do aplicativo. Você pode forçá-los a exibir símbolos para outra cultura usando a FormatProvider propriedade.
Expressões e máscaras regulares
Embora você possa usar expressões e máscaras regulares para validar a entrada do usuário, elas não são completamente equivalentes. Expressões regulares podem expressar padrões mais complexos do que máscaras, mas máscaras podem expressar as mesmas informações de forma mais sucinta e em um formato culturalmente relevante.
A tabela a seguir compara quatro expressões regulares e a máscara equivalente para cada uma.
Expressão regular | Máscara | Anotações |
---|---|---|
\d{2}/\d{2}/\d{4} |
00/00/0000 |
O / caractere na máscara é um separador de data lógica e será exibido para o usuário como o separador de data apropriado para a cultura atual do aplicativo. |
\d{2}-[A-Z][a-z]{2}-\d{4} |
00->L<LL-0000 |
Uma data (dia, abreviação de mês e ano) no formato dos Estados Unidos em que a abreviação de mês de três letras é exibida com uma letra maiúscula inicial seguida por duas letras minúsculas. |
(\(\d{3}\)-)?\d{3}-d{4} |
(999)-000-0000 |
Número de telefone dos Estados Unidos, código de área opcional. Se o usuário não quiser inserir os caracteres opcionais, ele poderá inserir espaços ou colocar o ponteiro do mouse diretamente na posição na máscara representada pelo primeiro 0. |
$\d{6}.00 |
$999,999.00 |
Um valor de moeda no intervalo de 0 a 999999. A moeda, o milésimo e os caracteres decimais serão substituídos em tempo de execução por seus equivalentes específicos à cultura. |