Bruno C. de Paula Componentes ASP.NET Validação – Parte 2 2º Semestre 2009 > PUCPR > Tecnologia de Programação 2 Resumo da aula O objetivo de hoje é conhecer mais alguns dos componentes disponibilizados pelo ASP.NET. Vamos focar nos componentes de validação. Hoje: RegularExpressionValidator Tipos de componentes Validator Controls Controles de validação de dados; Validações automatizadas. Controle de Hoje 05/11/2015 4 Expressão Regular (regexp) Método formal para especificar um padrão de texto; Composição de símbolos no formato de regra; O maior desafio está em aprender a ler e escrever uma regexp. 05/11/2015 5 Uma expressão regular serve para casar um padrão com um texto 05/11/2015 6 Utilidade Procurar texto dentro de outro; Separar um ou mais subtextos dentro de um texto; Validar texto em relação a um padrão. 05/11/2015 7 Principais metacaracteres Metacaracte Nome Significado Casa Ñ Casa . Ponto Um caractere qualquer n.a casa com não, não, n-o n.a não casa com na, naao [...] Lista Qualquer um n[aã]o n[aã]o casa com não casa não, nao com no, nãão [.-.] Intervalo Intervalo entre caracts X[1-9]Y X[1-9]Y casa com não casa X1Y, X2Y com XAY [^...] Lista negada X[^a-z] X[^a-z] casa com não casa XA, XB com Xa 05/11/2015 Qualquer um exceto 8 Principais metacaracteres Metacaracte Nome Significado Casa ? Opcional (0 ou 1) Anterior pode ou não ocorrer amar?! amar? não Casa com casa com ama! e com amado amar! * Muitos (0 ou muitos) Anterior pode ocorrer diversas vezes [ar]*a casa com a, arara, ra + Muitos (1 ou muitos) Anterior pode ocorrer diversas vezes 5+1 casa com 51, 551 05/11/2015 Ñ Casa 5+1 não casa com 1 9 Principais metacaracteres Metacaracte Nome Significado Casa Ñ Casa {,} Muitos (Chaves) Anterior aparece pelo menos n e no máximo m vezes 5{3,5}1 casa com 5551, 55551 5{3,5}1 não casa com 551 | Ou Um ou outro mão|pão casa com mão () Grupo Agrupa elementos (\.[0-9]){3} casa com .0.1.2 05/11/2015 10 Principais metacaracteres Metacaracte Nome Significado Casa \d Dígito É um dígito (0 a 9) \d\d\d casa com 123 \D Não dígito Não é um dígito \D=\d+\+\d+ casa com A = 1 + 1 \w Letra É uma letra \w+ casa com a, ab, abc 05/11/2015 11 Importante! \ faz o escape dos caracteres; \. , \(, \), ... 05/11/2015 12 Exemplos (\(0xx[0-9]{2}\) ?)?[0-9]{4}-[0-9]{4} 05/11/2015 13 Casa com: (0xx41) 3244-3333, 3233-3333 Não casa com: (0 3244-3333 05/11/2015 14 Exemplos ([01][0-9]|2[0-3]):[0-5][0-9] 05/11/2015 15 Casa com: 22:30, 12:40, 01:59 Não casa com: 23:61, 25:59 05/11/2015 16 Componente RegularExpressionValidator Valida a partir de uma expressão regular contida na propriedade ValidationExpression. 05/11/2015 17 Referências Portal sobre Expressões Regulares: – http://aurelio.net/er/ Livro gratuito sobre Expressões Regulares: – http://guia-er.sourceforge.net/ Livro sobre Expressões Regulares: – http://www.novatec.com.br/livros/expreg2/ Uma excelente explicação para iniciantes: – http://nerdson.com/blog/em-terra-demetacaractere-quem-tem-um-asterisco-erei/ Testador de regexp: http://regexpal.com/ 05/11/2015 18 Referências Portal: – http://www.asp.net/ Início: – http://www.asp.net/get-started/ Aprenda: – http://www.asp.net/learn/ 05/11/2015 19 Referências Vídeo sobre validação (16 minutos): – http://www.asp.net/learn/videos/vide o-7419.aspx ASP.NET QuickStart: – http://quickstarts.asp.net/QuickStartv 20/aspnet/doc/ctrlref/validation/defau lt.aspx 05/11/2015 20