Мне нужно найти все строки, окруженные «[» и «]», используя регулярное выражение, но избегая строк внутри блока <table></table>
, например:
<html>
<body>
<p><table>
<tbody>
<tr>
<td style="border-style: solid; border-width:1px;">
<span style="font-family: Courier;">[data1]</span>
</td>
<td style="border-style: solid; border-width:1px;">
<span style="font-family: Courier;">[data10]</span>
</td>
</tr>
</tbody>
</table>
</p>
<p>[data3] [data4] [data5]</p>
</body>
</html>
только в этом случае [ data3], [data4] и [data5] должны быть найдены. Пока у меня есть это: @"(((?<!<span>)(\[[a-zA-Z_0-9]+)](?!<\/span>))|((?<!<span>)(\[[a-zA-Z_0-9]+)])|((\[[a-zA-Z_0-9]+)](?!<\/span>)))(?!.*\1)"
Это обнаруживает все блоки [], которые не окружены тегами, и я попытался добавить отрицательный просмотр вперед и назад, но он не работает, он по-прежнему получает блоки внутри блока таблицы.
Надеюсь, вы, ребята, можете мне с этим помочь.