Краткий ответ: Никогда не пытайтесь анализировать HTML из дикой природы с помощью регулярных выражений.Скорее всего, он вернется, чтобы преследовать вас.
Более длинный ответ: Если вы абсолютно уверены, что HTML-код, который вы анализируете, соответствует данной структуре, вы можете использовать строку.Split (), как предложила Дженни.
string html = "<tr><td>001</td><td>MC Hammer</td><td>Can't Touch This</td></tr>";
string[] values = html.Split(new string[] { "<tr>","</tr>","<td>","</td>" }, StringSplitOptions.RemoveEmptyEntries);
List<string> list = new List<string>(values);
Независимое перечисление тегов делает эту слегка более читабельной, а .RemoveEmptyEntries
не позволит вам получить пустую строку в вашем списке между соседними закрывающими и открывающими тегами.
Если этот HTML-код исходит из дикой природы или из инструмента, который может измениться - другими словами, если это больше, чем разовая транзакция, - я настоятельно рекомендую вам использовать что-то вроде HTML Agility Pack вместо этого.Это довольно легко интегрировать, и есть много примеров на Intarwebs.