我有这段代码>
Dim match = Regex.Match(text.ToLower(), "(?<=[get|post])\s(?<Path>/.*)\shttp/1\.1.*?host:\s(?<Host>[A-Za-z0-9\-\.]*)", RegexOptions.Singleline )
所以当我匹配时,它给了我所有小写的网址
所以我删除(ToLower)命令但是当我删除它时它不匹配!!!!
你能给我这个正则表达式代码吗,所以当我删除(ToLower)命令时它匹配。??
答案 0 :(得分:3)
构造函数为此提供了一种方法:
public Regex(string pattern,RegexOptions options)
使用RegexOptions
中的一项:
RegexOptions.IgnoreCase
您已使用一个RegexOptions
,但RegexOptions
是[Flags]
枚举:您可以使用按位或运算符(|
)一次使用多个选项:< / p>
Dim match = Regex.Match(text, "<pattern>", RegexOptions.Singleline | RegexOptions.IgnoreCase )
优点是在正则表达式中评估案例。 ToLower
命令将在字符串上运行。对于长字符串,这意味着代码运行时间是两倍。