📅  最后修改于: 2023-12-03 15:29:48.662000             🧑  作者: Mango
正则表达式是一种强大的文本处理工具,C#中也内置了正则表达式库,开发者可以使用它来验证和处理字符串。
当我们需要对一个字符串进行Url格式的验证时,C#中使用正则表达式可以轻松实现。
以下是一个可以验证Url是否符合网站格式的正则表达式:
^(http(s)?://)?([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?$
这个正则表达式可以通过以下方式进行解释:
下面是使用该正则表达式进行Url验证的示例代码:
using System;
using System.Text.RegularExpressions;
public class Program
{
public static void Main()
{
string url1 = "https://www.example.com/";
string url2 = "http://example.com";
string url3 = "ftp://example.com";
string url4 = "https://www.example.com/path?query=string";
string pattern = "^(http(s)?://)?([\\w-]+\\.)+[\\w-]+(/[\\w- ./?%&=]*)?$";
bool isMatch1 = Regex.IsMatch(url1, pattern);
bool isMatch2 = Regex.IsMatch(url2, pattern);
bool isMatch3 = Regex.IsMatch(url3, pattern);
bool isMatch4 = Regex.IsMatch(url4, pattern);
Console.WriteLine("Is url1 a valid url? " + isMatch1);
Console.WriteLine("Is url2 a valid url? " + isMatch2);
Console.WriteLine("Is url3 a valid url? " + isMatch3);
Console.WriteLine("Is url4 a valid url? " + isMatch4);
}
}
上述代码会输出以下结果:
Is url1 a valid url? True
Is url2 a valid url? True
Is url3 a valid url? False
Is url4 a valid url? True
我们可以看到,正则表达式成功地过滤了无效的Url,保留了有效的网址。
以上是C#中网站Url验证的正则表达式和相应代码的介绍。