Mit %scan ist das so einfach nicht lösbar, da eben ein ";" auch im Text vorkommen könnte.
Hier hilft leider nur eine Schleife mit Zeichenweiser Verarbeitung.