Тоже что-то никак, хотя все разные варианты перепробовал и вроде бы все нормально отрабатывает Идея решения в том, чтобы в подстроке посчитать открывающие и закрывающие теги, и если их количество совпадает, то мы нашли валидную пару открывающего и закрывающего тегов. А если не совпало, то ищем следующий закрывающий тег и снова считаем количество. (!) оказывается во входящей строке просто надо было удалить все переносы строк, тогда все заработало