2017-03-06 3 views
0

Ich möchte validieren xxxxxxxxxV diese nic Nummer. Ich habe diesen Code dafür benutzt. Es funktioniert nicht.Wie überprüfe ich, ob NIC gültig ist?

Public Function validateNIC(nicnumber) As Boolean 
    Dim nic As New Regex("/^[0-9]{9}[vVxX]$/") 
    If nic.IsMatch(nicnumber) Then 
     Return True 
    Else 
     Return False 
    End If 
End Function 
+0

Was ist eine "NIC"? – Dai

+0

@Dai: Scheint etwas in Sri Lanka verwendet zu werden: https://en.m.wikipedia.org/wiki/National_identity_card_(Sri_Lanka) –

+0

Ja !! Es ist in Srilanka – sanjeewa

Antwort

2

Regex Ausdrücke in. NET sollte nicht von Schrägstrichen umgeben sein. Entferne sie und es sollte funktionieren.

Dim nic As New Regex("^[0-9]{9}[vVxX]$") 
+0

Es funktioniert !!!!! Danke !!!!!! – sanjeewa

2
  • .NET reguläre Ausdrücke verwenden keine / als Trennzeichen. Sie drücken sie direkt als Zeichenfolgen aus.
  • Ihre If ... Return Syntax ist ausführlich und kann
  • Sie vereinfacht werden kann die Regex Instanz in einem statischen (Shared) Feld für eine bessere Leistung cachen, können Sie auch RegexOptions.Compiled wenn Ihr Regex ausgewertet wird oft
  • Sie sollten konform angeben .NET-Namenskonventionen und einen Typ für die nicnumber Parameter angeben

Private Shared nicRegex As New Regex("^[0-9]{9}[vVxX]$", RegexOptions.Compiled) 

Public Shared Function IsValidNicNumber(nicNumber As String) As Boolean 

    Return nicRegex.IsMatch(nicNumber) 

End Function 
+0

Das funktioniert auch !!!!!!! Danke !! – sanjeewa

Verwandte Themen