如何在掩码文本框电话号码输入掩码中验证空值

4

我想检查是否存在空值,使用以下代码。但在文本框中仍然会有值。而且文本框中的值是"( ) -"。

If Text_Phone.Text IsNot "" Then
If BuildSqlFlag = True Then
BuildSql = BuildSql & " AND " & "Phone = " & Text_Phone.Text
Else
BuildSql = "Phone = " & Text_Phone.Text
End If
BuildSqlFlag = True
End If

我不确定我的代码需要改变什么,我尝试了以下操作:

If Text_Phone.Text IsNot "(   )   -" Then

但是这并没有什么帮助。

请不要给我负面评价,如果需要,我可以修改我的问题。只需解释我需要改进的地方即可。 - JT4U
1
开始时,先删除无关的标签,其中一些是互斥的。如果您不确定,请将鼠标悬停以读取每个标签的摘要。 - Ňɏssa Pøngjǣrdenlarp
我删除了两个标签。谢谢你的建议。还有什么其他需要我修复的吗? - JT4U
1
不要使用字符串连接来构建 SQL 查询。请使用参数。 - Ňɏssa Pøngjǣrdenlarp
有没有一个示例可以用来构建参数?我对编程还很陌生,但这些指南帮助我很多,让我逐渐熟悉VS。 - JT4U
显示剩余2条评论
2个回答

1

验证电话号码格式:999-999-9999

Imports System.Text.RegularExpressions
Public Class Form1
    Private Sub Button1_Click(ByVal sender As System.Object, _
     ByVal e As System.EventArgs) Handles Button1.Click
        Dim phoneNumber As New Regex("\d{3}-\d{3}-\d{4}")
        If phoneNumber.IsMatch(TextBox1.Text) Then
            TextBox2.Text = "Valid phone number"
        Else
            TextBox2.Text = "Not Valid phone number"
        End If
    End Sub
End Class

验证电话号码格式为(999)999-9999

Private Sub Button1_Click_1(sender As System.Object, _
 e As System.EventArgs) Handles Button1.Click
        Dim phoneNumber As New Regex("\(\d{3}\)\d{3}-\d{4}")
        If phoneNumber.IsMatch(TextBox1.Text) Then
            TextBox2.Text = "Valid phone number"
        Else
            TextBox2.Text = "Not Valid phone number"
        End If
End Sub

我将在另一个输入中使用它,该输入是用于电话号码的文本框。谢谢,这很有用,我已经点了赞。请给这个问题点个赞。这两个答案将帮助未来的访问者。谢谢。 - JT4U

1
将TextMaskFormat设置为排除提示和文字。
Text_Phone.TextMaskFormat = MaskFormat.ExcludePromptAndLiterals

MaskFormat枚举

当你执行Text_Phone.Text时,如果它为空,它将等于""


非常感谢。我从来不知道maskformat可以排除文字。请为未来的访问者点赞,因为我知道很多人会使用masktextboxes而不是textboxes进行电话号码验证。 - JT4U

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接