Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

cintiadel

[Resolvido] RegularExpressionValidator CPF

Recommended Posts

encontrei uma expressao regular para cpf na net, só que ela só verifica se o usuário digitou números como "1111111111" e tbm a quantidade de caracteres, mas n verifica se ele é válido ou não.

Será que alguém pode me ajudar a corrigir:

^\d{3}\d{3}\d{3}\d{2}$

Compartilhar este post


Link para o post
Compartilhar em outros sites

Veja se esta função resolve:

 

 

'********************************************************************

' Procedimento para validar CPF

' Implementação: If ValidaCPF(TxtCPF.Text) = False Then TxtCPF.Text = ""

'********************************************************************

Public Function ValidaCPF(ByVal CPF As String) As Boolean

Dim soma As Integer

Dim Resto As Integer

Dim i As Integer

'Valida argumento

If Len(CPF) <> 11 Then

Return False

Exit Function

End If

soma = 0

For i = 1 To 9

soma = soma + Val(Mid$(CPF, i, 1)) * (11 - i)

Next i

Resto = 11 - (soma - (Int(soma / 11) * 11))

If Resto = 10 Or Resto = 11 Then Resto = 0

If Resto <> Val(Mid$(CPF, 10, 1)) Then

Return False

Exit Function

End If

soma = 0

For i = 1 To 10

soma = soma + Val(Mid$(CPF, i, 1)) * (12 - i)

Next i

Resto = 11 - (soma - (Int(soma / 11) * 11))

If Resto = 10 Or Resto = 11 Then Resto = 0

If Resto <> Val(Mid$(CPF, 11, 1)) Then

Return False

Exit Function

End If

Return True

End Function

Compartilhar este post


Link para o post
Compartilhar em outros sites

já fiz isso através de função queria saber mesmo como validar pelo visual studio com RegularExpressionValidator, pois o meu formulario ta todo validado por componente de validation

mesmo assim obrigada

Compartilhar este post


Link para o post
Compartilhar em outros sites

O problema é que expressões regulares não são nada simples, terá que buscar na net algum exemplo.

 

Abraços...

antes de postar qualquer coisa eu sempre vasculho a net

e nesse caso não encontrei nda q verifique se ele é válido

Compartilhar este post


Link para o post
Compartilhar em outros sites
procurei sim...ai q você se engana....rsrsrsrs

essa expressão que você me mandou testa sem tem 11 digitos, se eu coloquei ponto e traço corretamente, mas não impede

que eu digite um cpf como 123.456.789-10 (q não é um cpf válido?),ou seja n verifica se é um cpf válido.

o mesmo acontece com essa outra q encontrei

([0-9]+?)\\s([a-z]+)\\s([0-9]+?)\\s([A-Z]+?)\\s(.*$)

será q existe???

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acredito que exista sim, mas como essas não estão validando eu não tenho nenhuma. Costuma utilizar funções feitas ou em VB ou C# mesmo.

 

Abraços...

vb, mas queria usar o validator mesmo, a função q valida eu já tenho.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acredito que exista sim, mas como essas não estão validando eu não tenho nenhuma. Costuma utilizar funções feitas ou em VB ou C# mesmo.

 

Abraços...

será q ninguem pensou numa expressao regular pra verificar se o cpf é valido????

Compartilhar este post


Link para o post
Compartilhar em outros sites

você quer uma função que valide a string do CPF digitado ou a matemática da construção do CPF?

Se for a string existe sim, mas se for a matemática da contrução não tem como, só com função mesmo. É necessário fazer a verificação com vetores e o validator não dá suporte a isso.

Compartilhar este post


Link para o post
Compartilhar em outros sites

você quer uma função que valide a string do CPF digitado ou a matemática da construção do CPF?

Se for a string existe sim, mas se for a matemática da contrução não tem como, só com função mesmo. É necessário fazer a verificação com vetores e o validator não dá suporte a isso.

a matematica q diz se ele é valido ou nao

pelo visto n existe mesmo só através de funçao mesmo.

tópico resolvido

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.