Hmm.. Ein klassischer Fall einer regulären Grammatik, die man mit einem Scanner verarbeiten könnte. Aber ich nehme mal an, dass du darüber noch nichts gelernt hast, oder? (Hab's ja selbst erst dieses Semester an der Uni gehabt.)
Die Idee ist im Grunde recht einfach. Du liest den String Zeichen für Zeichen ein und merkst dir stets den aktuellen "Zustand" (z.B. "'$' gelesen, 'i' erwartet"). Je nach dem in welchem Zustand du gerade bist, verarbeitest du aktuelle Zeichen anders und springst gegebenfalls in einen anderen Zustand.
Kannst ja mal ein wenig googlen, oder so.
Scanner reguläre Grammatik
Zustandsautomat