RegEx匹配区分大小写

时间:2014-07-01 13:56:47

标签: .net vb.net

我有这段代码>

Dim match = Regex.Match(text.ToLower(), "(?<=[get|post])\s(?<Path>/.*)\shttp/1\.1.*?host:\s(?<Host>[A-Za-z0-9\-\.]*)", RegexOptions.Singleline )

所以当我匹配时,它给了我所有小写的网址

所以我删除(ToLower)命令但是当我删除它时它不匹配!!!!

你能给我这个正则表达式代码吗,所以当我删除(ToLower)命令时它匹配。??

1 个答案:

答案 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命令将在字符串上运行。对于长字符串,这意味着代码运行时间是两倍。