使用Regex解析给定字符串的值

时间:2016-09-02 11:39:06

标签: c# regex

我有string

String str = "Displaying bills 1 - 20 of 10000 in total";

我希望在这种情况下解析总值10000。 这就是我的尝试:

Regex regex = new Regex(@"\\d+(?=\\s*in total)");
Match match = regex.Match("Displaying bills 1 - 20 of 10000 in total");
if (match.Success)
{
    Console.WriteLine(match.Value);
} 

目前这已成功。

2 个答案:

答案 0 :(得分:-1)

正如@juharr在评论中所提到的,你只需要删除双反斜杠。字符串开头的@将其标记为逐字字符串,不需要转义特殊字符。

答案 1 :(得分:-1)

        string text = "Displaying bills 1 - 20 of 10000 in total";
        Regex r = new Regex(Regex.Escape("of") +"(.*?)"+Regex.Escape("in"));
        MatchCollection matches = r.Matches(text);
        MessageBox.Show(matches[0].Groups[1].Value);