2014-10-03 3 views
-1

Извлечение текста из HTML кода с использованием регулярных выражений

<time datetime="2014-10-18T19:30:00-0600">Saturday 18 October 2014</time>

Мне нужно извлечь дату "Суббота 18 октября 2014". Я знаю, что должен использовать что-то вроде:

MatchCollection m1 = Regex.Matches(downloadBandData, @"<time daytime=""\s*(.+?)\s*</time>", RegexOptions.Singleline); 

Однако я не знаю точное выражение, которое я должен использовать.

ответ

2

Для будущего анализа HTML рекомендуется использовать инструмент, отличный от регулярного выражения. Тем не менее, вы можете использовать следующую ..

Match m = Regex.Match(downloadBandData, @"<time[^>]*>([^<]+)</time>"); 
if (m.Success) 
    Console.WriteLine(m.Groups[1].Value); //=> "Saturday 18 October 2014" 

Причину регулярное выражение не соответствует, потому что вы пытаетесь соответствовать daytime вместо «DateTime», и вы не соответствие содержимого между двойными кавычками " ... " или в закрывающая скобка >

правильное представление регулярного выражения следует из выглядела следующим образом:

@"<time datetime=""[^""]*"">\s*(.+?)\s*</time>" 
Смежные вопросы