验证数字和/或字母和/或两者的文本框

时间:2015-05-28 12:08:26

标签: vb.net

我想验证用户输入TextBox是否为数字和/或字母和/或字母数字?因此,TextBox不得包含特殊字符。

2 个答案:

答案 0 :(得分:2)

如果您希望在单击按钮时进行验证,而不是在键入时(而不是在键入时),则有几种不同的方法。

一种方法是使用System.Text.RegularExpressions来匹配非字母数字字符。

Dim pattern As Regex = New Regex("[^a-zA-Z0-9]")
If pattern.IsMatch(myString) Then MsgBox("Not alphanumeric")

另一种方法是使用LINQ来检查非字母和非数字:

If Not TextBox1.Text.All(Function(ch) Char.IsLetterOrDigit(ch)) Then
    MsgBox("Non alphanumeric")
End If

IsMatch MSDN

IsLetterOrDigit MSDN

答案 1 :(得分:1)

您可以使用KeyPress事件仅接受特定字符。

Private Sub YourTextBox_KeyPress(sender As Object, e As System.Windows.Forms.KeyPressEventArgs) Handles YourTextBox.KeyPress

    If Not Char.IsLetterOrDigit(e.KeyChar) Then
        e.Handled = True
    End If

End Sub