如何在vb.net中限制类型url的文本框

时间:2013-12-31 15:08:13

标签: vb.net

我有TextBoxButton。 我希望当用户输入TextBox时,例如“ stackoverflow ”,MessageBox会显示:

  

请填写网址 - 如果用户输入“stackoverflow.com”

然后程序继续并将它们带到该网站。但是,如果URL不包含扩展名(.co.uk,.com,.org等),则该程序不会继续访问该网站。

2 个答案:

答案 0 :(得分:1)

无论何时,只要使用.NET中已有的东西

Dim address As String = "StackOverflow"
Dim uri As System.Uri
If System.Uri.TryCreate(address, UriKind.RelativeOrAbsolute, uri) Then
    ' if you get here, it's a real url
Else
    ' if you get here, it's not
End If

答案 1 :(得分:0)

这应该能够验证所有网站网址并提示用户以正确的格式输入网站网址。

Private Sub TextBox1_TextChanged(sender As System.Object, e As System.EventArgs) Handles TextBox1.TextChanged
   ValidatewebsiteAddress(Me.TextBox1.Text)
End Sub


 Private Sub ValidatewebsiteAddress(ByVal _websiteAddress As String)
        If Not Regex.IsMatch(_websiteAddress, _
       "^((ht|f)tp(s?)\:\/\/|~/|/)?([\w]+:\w+@)?([a-zA-Z]{1}([\w\-]+\.)+([\w]{2,5}))(:[\d]{1,5})?((/?\w+/)+|/?)(\w+\.[\w]{3,4})?((\?\w+=\w+)?(&\w+=\w+)*)?") Then
            MessageBox.Show("Please complete url")
        Else
            MessageBox.Show("Thanks a lot")
        End If
    End Sub