Regex não ganancioso Python para limpar xml

Tenho um arquivo 'xml file' que contém alguns caracteres indesejados

<data>
  <tag>blar </tag><tagTwo> bo </tagTwo>
  some extra 
  characters not enclosed that I want to remove
  <anothertag>bbb</anothertag>
</data>

Eu pensei que a seguinte substituição não-gananciosa removeria os caracteres que não estavam encaixados corretamente em<sometag></sometag>

re.sub("</([a-zA-Z]+)>.*?<","</\\1><",text)
            ^          ^ ^     ^      text is the xml txt.  
         remember tag, | |     put tag back without and reopen next tag
               read everything until the next '<' (non-gready) 

Este regex parece apenas encontrar a posição indicada com o[[]] dentro</tag>[[]]<tagTwo> O que estou fazendo de errado

EDITAR A motivação para esta pergunta foi resolvida (veja os comentários, eu estava com um arquivo perdido e no arquivo xml que estava fazendo com que ele não fosse analisado - não tinha nada a ver com os caracteres que desejo excluir). No entanto, ainda estou curioso para saber se o regex é possível (e o que houve de errado com minha tentativa) e, portanto, não excluo a pergunt

questionAnswers(2)

yourAnswerToTheQuestion