Нужно отыскивать строки, в которых есть такая подстрока
такого вида <e1><e7><00e1>
либо с отсутствущим средним тэгом <5c><005с>
Пытаюсь как-то так
(<[0-9a-f]{2}>)(<[0-9a-f]{2}>){0,1}(<[0-9a-f]{4}>)
Но находит фигню

Первый тэг это код cp1251, послединий - utf-8. Собственно, конечная цель заключается в замене значения последнего тэга на кирилическое соответствие первому. Если есть средний тэг, то его нужно как-то игнорировать.
Уже не один час бьюсь. Чё-то не очень мне понятны правила про работу с круглыми скобками и повторами, как-то не так они работают.