在放置正则表达式时出错

时间:2013-12-07 08:57:40

标签: c# regex string

我要找的是在字符串数组中找到GPA。这是代码,但是当我放置正则表达式时,我收到错误。

for (int l = 0; l < resplitted.Length; l++)
{
     Regex regex = new Regex(^[0]|[0-3]\.(\d?\d?)|[4].[0]$); //error here
     Match match = regex.Match(x[i]);
     if (match.Success)
     {
          Console.WriteLine("GPA is :"+match.Value);
     }
}

2 个答案:

答案 0 :(得分:2)

您需要将Regular Expression括在带""符号

的双引号@
Regex regex = new Regex(@"^[0]|[0-3]\.(\d?\d?)|[4].[0]$");

注意:前缀为@的字符串将禁用以\开头的转义序列

您可以在不使用\\符号

的情况下使用双@斜杠
Regex regex = new Regex("^[0]|[0-3]\\.(\\d?\\d?)|[4].[0]$");

答案 1 :(得分:1)

是的,因为它应该是一个字符串。

试试这个:

 @"^[0]|[0-3]\.(\d?\d?)|[4].[0]$"