Возьми готовый парсер. Самым мелким решением может быть следующее: готовый парсер регулярных выражений и XML-парсер (тоже готовый) на базе регекспов. Но смотря что хочешь получить на выходе. Есть два подхода, дают тупо список тэгов или дерево. Дерево таким подходом вряд ли получишь.