我想从这段文本中提取TD之间的值(html标记)。
<tr id="pair_169">
<td id="cr_12cl_last169">16,294.61</td>
<td>16,294.61</td><td>16,318.11</td>
<td class="">16,225.25</td>
<td class="bold greenFont">73.47</td>
<td class="bold greenFont">0.45%</td>
<td id="cr_12cl_date169">23/12</td>
</tr>
什么是最好的正则表达式?
答案 0 :(得分:1)
您可以使用以下代码:
const string pattern = @"<td\b[^>]*?>(?<V>[\s\S]*?)</\s*td>";
foreach (Match match in Regex.Matches(inputText, pattern, RegexOptions.IgnoreCase))
{
string value = match.Groups["V"].Value;
Console.WriteLine(value);
}
答案 1 :(得分:1)
我知道这是一个老线程,但这个帮助了我类似的情况
<td\b[^>]class=".*?>(.*?)<\/td>
答案 2 :(得分:0)
试试这个正则表达式
<td>(.*?)</td>
或者这个,但是它用于仅与TR匹配TD
(?<1><TR[^>]*>\s*<td.*?</tr>)