Expressões regulares e xml

Oi pessoal!

Estou com a seguinte dúvida… tenho um xml, e preciso recuperar o nome de uma algumas tags nele. Por exemplo, tenho a tag:

<tag1>valor</tag1>

Aí na classe faço assim:

Pattern pattern = Pattern.compile( "<tag1>.+?</tag1>");
Matcher matcher = pattern.matcher( strTexto);
		
if( matcher.find() ){ 
	while (matcher.find()) {
	       String match = matcher.group();
	       /* Processa a match... */
	}
}

Isso está funcionando, consigo encontrar a tag como a exemplificada acima. Porém, se houver uma quebra de linha, ele não funciona!
Por ex, se for assim:

<tag1>
valor1
valor2
</tag1>

Assim ele não acha… acho que é preciso mudar a expressão regular utilizada, mas não sei como. Alguém pode ajudar?

Valeu!!!

Pessoal… o problema não era a quebra de linha, e sim porque eu tenho uma tag dentro da outra:

<tag1>
blablabla
<tag2> bla2</tag2>
</tag1>

O que eu quero recuperar, com a expressão regular, é tudo isso aí em cima. Mas não estou conseguindo… Como eu faço isso?