Итак по условиям задачи необходимо находить парные теги и выводить их. Решил решить с помощью РВ и заодно разобраться в рекурсии, что оказалось не так просто, как казалось по началу. Итак есть упрощенная строка пустых тегов с тройной или n-вложенностью <tag><tag><tag>qwe</tag></tag></tag> необоходимо РВ которое будет ее искать и находить в тексте. вот что получилось, но ищет все равно не полностью, последний закрывающий тег не находит
(<tag>)(?=(\w*<\/tag>)|(<tag>(?:\w*|(?3))<\/tag>)<\/tag>)
открывающий тег, смотрим вперед, если видим закрывающий тег - то все Ок, без вложений, дальше проверяем на вложенность тегов. https://regex101.com/r/MQpwng/1 помогите доделать РВ, чтобы работала рекурсия полностью по закрывающиему тегу.