Это Очень плохая идея TM для анализа HTML с помощью регулярных выражений, поскольку это не обычный язык. Вам лучше запустить это через tidy (чтобы очистить его), а затем использовать синтаксический анализатор XML или использовать XPath.
В противном случае, соответствующий шаблон с захватами:
<.*?>\([^<]+\)</.*?>
EDIT
Я только что заметил, что ваш HTML неправильно сформирован! У вас нет закрывающего тега </b>
. Регулярное выражение, которое я вам дал, будет работать только в том случае, если вы пометите текст одним тегом. Это не сработает для вашего примера. При условии, что у вас всегда будет тег <b>...</b>
внутри, вы можете сделать:
<.*?><b>\([^<]+\)</b></.*?>