Ciao a tutti.
Ho questo problema:
per abbreviare la lunghezza del discorso, ho un form di Login, in cui sono presenti 2 TextBox che accettano da un min di 5 caratteri ad un max di 20 e solo lettere maiuscole, minuscole, numeri, underscore, trattino, e lettere accentate.
Invece di usare un ciclo For su ogni text controllando ogni singolo carattere digitato, le RegularExpression mi sembravano efficaci.
Ho provato a mettere questo pezzo di codice:
codice:
Function Convalida(ByVal Controllo As TextBox, ByVal TipoControllo As Integer)
Dim Espressione As String = "", Errore As Boolean = False
Select Case TipoControllo
Case 1 'Nome Utente, Password;
Espressione = "[\w-àèéìòù]*"
End Select
Dim Reg As New Text.RegularExpressions.Regex(Espressione)
If Not (Reg.IsMatch(Controllo.Text)) Then
Errore = True
End If
Return(Errore)
End Function
lasciando stare che il select case ha solo un case(ma verrà poi incrementato per vari controlli)
non mi funziona, ovvero anche se la text contiene solo questi caratteri si verifica l'errore e queindi entra in Errore=True.
Come mai? In cosa sbaglio?
inoltre la RegularExpression che ho inserito è corretta? e per l'E-mail come diventa?
Grazie mille.