Замена чисел с плавающей запятой после определённого текста

String Rate = System.Text.RegularExpressions.Regex.Match(Response, @"161407,""FUSDBUY"":2.4350,""FUSDSELL"":([0-9]+\.[0-9]+),""").Groups[1].Value;

Вместо 2.4350 нужно найти любое число с плавающей запятой. Как только уже не пробовал не работает.

Текст:

161407,"FUSDBUY":2.4350,"FUSDSELL":2.5200,

Полный код метода парсера валют:

private String AlfabankUSDsell()
{
    System.Net.WebClient wc = new System.Net.WebClient();
    String Response = wc.DownloadString("https://infobank.by/kursy-valyut/rogachev/"); ;
    String Rate = System.Text.RegularExpressions.Regex.Match(Response, @"161407,""FUSDBUY"":2.4350,""FUSDSELL"":([0-9]+\.[0-9]+),""").Groups[1].Value;
    return Rate;
}

Ответы (1 шт):

Автор решения: Dzianis Karpuk

Если нужно именно регулярками парсить, 161407 в регулярке это какая-то известная константа, а 2.4350 это число, которое может измениться, то нужно просто поменять код на

private String AlfabankUSDsell()
{
    System.Net.WebClient wc = new System.Net.WebClient();
    String Response = wc.DownloadString("https://infobank.by/kursy-valyut/rogachev/"); ;
    String Rate = System.Text.RegularExpressions.Regex.Match(Response, @"161407,""FUSDBUY"":([0-9]+\.[0-9]+),""FUSDSELL"":([0-9]+\.[0-9]+),""").Groups[2].Value;


    return Rate;
}

Т.е. трактовать первое число, как первую группу в регулярке.

→ Ссылка