如何检查网卡是否有效?

时间:2017-03-06 18:09:26

标签: vb.net

我想验证xxxxxxxxxV这个nic号码。我用这个代码。它不起作用。

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

2 个答案:

答案 0 :(得分:2)

.NET中的正则表达式不应该被斜杠包围。删除它们,它应该工作。

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

答案 1 :(得分:2)

  • .NET正则表达式不使用/作为分隔符。你直接把它们表示为字符串。
  • 您的If ... Return语法详细且可以简化
  • 您可以将Regex实例缓存在静态(Shared)字段中以获得更好的效果,如果经常评估正则表达式,还可以指定RegexOptions.Compiled
  • 您应该符合.NET命名约定并指定nicnumber参数
  • 的类型

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