Con regex, ¿cómo hago coincidir varias veces una etiqueta XML?

Primero, antes de decir nada, DEBO hacer esto porque el RSS está mal formado, pero no puedo corregirlo por mi parte. Entonces, aunque intenté usar un analizador RSS y XML, fallan y solo tengo acceso front-end. Sin embargo, estoy muy cerca, pero no puedo entender por qué esto no coincidirá.

El feed (es unlargo 1 cadena de línea):http://pastebin.com/5dJhXCvf

Primer ejemplo:

<title>(.+)</title>

Esto pensé que funcionó muy bien con mi prueba de solo:

<title>&quot;cterrorism task force&quot; location:oregon - Google News</title>

Pero el problema es que coincide con todo, entonces como una coincidencia, por ejemplo:

<title>&quot;cterrorism task force&quot; location:oregon - Google News</title><title>&quot;cterrorism task force&quot; location:oregon - Google News</title>

Es igual a 1 elemento de resultado en mi matriz deexec() ymatch()

Entonces intenté:

<title>([\w\d\s\=\%\_\`\~\+\!\@\#\$\%\^\&\*\(\)\:\'\"\[\]\{\}\|\,\.\/]+)</title>

Pero eso no devuelve nada ... ¿Alguna idea?

Respuestas a la pregunta(5)

Su respuesta a la pregunta