Парсинг через регулярные выражения - C#

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

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

Посмотрите пожалуйста код.В нем происходит поиск в исходном коде страницы. Найти надо идентификатор товара из цифр. Находятся эти цифры по ключевому слову перед этими цифрами (в коде выглядит как lot_id( 43543)). Я сначала прогнал на поиск слова lot_id + символы+пробелы+цифры. Затем прогнал второй раз, для извлечения цифр из этого кусочка. В конце выходит сообщение с id моего лота. Вопрос правильно ли сделал, или можно было одним выражением извлечь эти цифры?
 //первый прогон
            string input = resp.ToString();
            string pattern = @"(lot_id\S\s)\d*";
           // Market_LoadOrderSpread
           Regex regex = new Regex(pattern);
           Match match = regex.Match(input);
            string output;
           output= match.Value;
            // второй прогон
           input = output;
           pattern = @"(\d+)";
           regex = new Regex(pattern);
           match = regex.Match(input);
           output = match.Value;
 
            MessageBox.Show(output);

        }

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

textual
Листинг программы
Console.WriteLine(Regex.Match(text, @"lot_id\(\s*(\d+)\s*\)").Groups[1].Value);

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


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

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

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