您好我需要验证文本框是否只接受网址名称。 请有人告诉我。 我真的很感激。
答案 0 :(得分:1)
我认为没有内置方法或类可用于将字符串验证为合法网址。但你可以使用正则表达式,如[“^ a-zA-Z0-9 -._”] +。([a-zA-Z] [a-zA-Z]) 如果您使用Ranhiru的代码,那么您将无法使用例如bild.de和s.int这两个都是有效的网址。
答案 1 :(得分:1)
您是否需要URL有效或只是正确的格式?如果它是后者那么你可能需要一个正则表达式,因为其他答案指出 - 但让它为所有 URL工作可能会很棘手。
如果是前者,那么只需尝试解析URL。有几种方法可以做到这一点,每种方法都有缺点。例如,如果您使用“ping”,那么您需要先移除任何前导“http://”。
但是,这种方法并非万无一失,因为a)您可能没有互联网连接,而b)主机可能已关闭。
答案 2 :(得分:1)
这个怎么样:
public void Test()
{
Uri result = UrlIsValid("www.google.com");
if (result == null)
{
//Invalid Url format
}
else
{
if (UrlExists(result))
{
//Url is valid and exists
}
else
{
//Url is valid but the site doesn't exist
}
}
Console.ReadLine();
}
private static Uri UrlIsValid(string testUrl)
{
try
{
if (!(testUrl.StartsWith(@"http://") || testUrl.StartsWith(@"http://")))
{
testUrl = @"http://" + testUrl;
}
return new Uri(testUrl);
}
catch (UriFormatException)
{
return null;
}
}
private static bool UrlExists(Uri validUri)
{
try
{
WebRequest.Create(validUri).GetResponse();
return true;
}
catch (WebException)
{
return false;
}
}
如果您只需要检查它是否格式正确,您可以取出UrlExists部分。
答案 3 :(得分:0)
您可以使用正则表达式检查输入的文本是否是有效的URL:)
using System.Text.RegularExpressions;
private bool validateURL()
{
Regex urlCheck = new Regex("^[a-zA-Z0-9\-\.]+\.(com|org|net|mil|edu|COM|ORG|NET|MIL|EDU)$");
if (urlCheck.IsMatch(txtUrlAddress.Text))
return true;
else
{
MessageBox.Show("The url address you have entered is incorrect!", "Error!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
return false;
}
}
您可以将此功能用作
if (validateURL() == true)
//Do something
else
//Do something else
在此处检查更多网址的RegularExpressions http://www.regexlib.com/Search.aspx?k=url&c=-1&m=5&ps=20
答案 4 :(得分:0)
更简单:
_______________________________________________________________6_______________________________________________________________
_______________________________0_______________________________________________________________7_______________________________
_______________N_______________________________3_______________________________N_______________________________8_______________
_______N_______________N_______________2_______________5_______________N_______________N_______________N_______________9_______
___N_______N_______N_______N_______1_______N_______4_______N_______N_______N_______N_______N_______N_______N_______N_______N___
_N___N___N___N___N___N___N___N___N___N___N___N___N___4___N___N___N___N___N___N___N___N___N___N___N___N___N___N___N___N___N___N_
N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_3_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N_N
答案 5 :(得分:0)
为我工作
private bool ValidateURL(string urlText) { 布尔结果;
try
{
Uri check = new Uri(urlText);
result = true;
}
catch (UriFormatException)
{
result = false;
}
return result;
}