📅  最后修改于: 2023-12-03 14:39:48.698000             🧑  作者: Mango
在开发 Web 应用程序时,经常需要验证 URL 是否有效。C# 中有几种方法可以实现这个功能,包括使用正则表达式和使用 .Net 内置的 Uri 类。
我们可以使用正则表达式来验证 URL 是否有效。以下是一个示例代码段,它使用正则表达式验证 URL 是否有效:
using System.Text.RegularExpressions;
bool CheckUrlValidity(string url)
{
Regex urlRegex = new Regex(@"^(https?://)?[a-z0-9\-\.]+\.[a-z]{2,}(\/.*)?$");
return urlRegex.IsMatch(url);
}
此代码使用正则表达式验证 URL 是否以 http:// 或 https:// 开头, 然后验证 URL 的域名是否有效。如果 URL 包含路径,则也会被验证。
Uri 类是 .Net 内置的类,它提供了一些方法来验证 URL 是否有效。以下是一个使用 Uri 类来验证 URL 是否有效的示例代码段:
bool CheckUrlValidity(string url)
{
bool result = Uri.TryCreate(url, UriKind.Absolute, out Uri uriResult)
&& (uriResult.Scheme == Uri.UriSchemeHttp || uriResult.Scheme == Uri.UriSchemeHttps);
return result;
}
此代码使用 Uri.TryCreate 方法来验证 URL 是否有效,并使用 Uri.Scheme 属性验证 URL 是否以 http 或 https 开头。
在 C# 中,我们可以使用正则表达式或 Uri 类来验证 URL 是否有效。根据您的应用程序和需求,您可以选择任何一种方法。