Регулярное выражение для получения числа - C#

Узнай цену своей работы

Формулировка задачи:

Извиняюсь конечно за столь наивный вопрос,но как с помощью регулярного выражения вынуть значение 47.9056
class="currencyrate_cell">47.9056</td>
сделал вот так
 
string pattern = @"\d+\.\d+</td>";                                                                                     -1 вариант
//string pattern = "<td align=\"right\" bgcolor=\"#EDEEEF\" class=\"currencyrate_cell\">(.*)</td>"; -2 вариант
Regex newReg = new Regex(pattern);
MatchCollection mathes = newReg.Matches(html);
label1.Text = mathes[0].Value;
"в 1 варианте он вытаскивает вместе с <td>
а во 2 вместе всё вместе 
<td align=\"right\" bgcolor=\"#EDEEEF\" class=\"currencyrate_cell\">47.9056</td>"
как мне изменить pattern что бы извлекать только

47.9056

в 1 и во 2 варианте ?

Решение задачи: «Регулярное выражение для получения числа»

textual
Листинг программы
string pattern = @"(?<=\>\s*)(?:\d+(?:\.\d+)?)(?=\s*\<)";
string s = "class=\"currencyrate_cell\">47.976</td>";
var m = Regex.Match (s, pattern); 
if (m.Success) {
    Console.WriteLine(m.Value);
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 3.875 из 5
Похожие ответы