更好/有效的方法来检查用户 url 输入
本文关键字:检查 用户 url 输入 方法 有效 更好 | 更新日期: 2023-09-27 18:37:28
我知道还有其他检查方法和类似的问题,但仍在尝试调试我的代码段。它检查用户是否输入了没有"http://"的网址
//page is a global variable, a string in this case
//loadPage(string url) loads the requested page;
private void checkIfUrlRight(string s)
{
if (!s.StartsWith("http://"))
{
if (!s.Contains("www."))
{
s += "http://www.";
page = s;
}
else
{
s += "http://";
page = s;
}
urlRTextBox.Text = page;
loadPage(page);
}
else
page = s;
urlRTextBox.Text = page;
loadPage(page);
}
我在加载页面时收到错误,它说 Url 是错误的。实际上我的代码是否有意义,或者我应该切换到复杂的东西,如正则表达式(通过网络查看,看起来很苛刻,不知道从哪里开始)或玩 c# Uri 类?有什么建议吗?
提前谢谢。
Uri
类中有一个验证某些 uri 的方法,您可以按如下方式使用它:
void checkIfUrlRight(string s)
{
if (Uri.IsWellFormedUriString(s, UriKind.RelativeOrAbsolute))
{
urlRTextBox.Text = page;
loadPage(page);
}
}
编辑:
请注意,实际上并非每个 URI 都是 URL(在此处描述)。但我相信对于您的情况(当所有 URL 都是 URI 时),这是最简单的验证方法。