I informatikk er en parser et dataprogram som analyserer inndata og konstruerer en datastruktur som representerer dens betydning. Dataene er normalt en streng med tegn (ofte, men ikke alltid på naturlig språk), men det kan være strukturerte data som XML, JSON, HTML eller data i et strukturert format som CSV.
Parsere er en nøkkelkomponent i kompilatorer, som oversetter menneskelig lesbar kildekode til maskinkjørbar objektkode. De brukes også i naturlig språkbehandling, dataanalyse og mange andre applikasjoner.
Det er to hovedtyper av parsere:ovenfra og ned og nedenfra og opp. Top-down-parsere starter med å undersøke den overordnede strukturen til input og jobber seg deretter ned til de enkelte tegnene. Nedenfra og opp-parsere starter med å undersøke de enkelte tegnene og deretter bygge dem opp til større og større strukturer.
Valget av parsertype avhenger av arten av inngangsdataene og ønsket utgang. For eksempel brukes top-down-parsere ofte for naturlig språkbehandling, mens bottom-up-parsere ofte brukes til dataanalyse.
Parsere kan implementeres ved hjelp av en rekke teknikker, inkludert rekursiv nedstigning, shift-reduser-parsing og kontekstfrie grammatikker. Valget av implementeringsteknikk avhenger av den spesifikke parseren og de ønskede ytelsesegenskapene.
Parsere spiller en viktig rolle i mange områder av informatikk og er avgjørende for mange applikasjoner. De gir en måte å analysere og forstå data på, og å oversette dem til en form som kan behandles av datamaskiner.