Le basi per costruire un parser sono:

Automi a stato finiti deterministici e non deterministici, espressioni regolari per l'analizzatore lessicale (legge il testo, lo divide in token e passa i token al parser)

Grammatiche libere dal contesto, linguaggi liberi da contesto e PDA (pushdown automaton) e algoritmi di parsing ( LL e LR ) per l'analizzatore sintattico, il parser vero e proprio.

Se hai la grammatica adatta, puoi usare Yacc/Bison per crerare automaticamente il parser, anche perchè un parser LALR(1) (i più usati al momento) non è fattibile a mano


detto questo, l'esempio che hai fatto, più che un parser è un non chiaro tipo di traduttore