Parser

Der Begriff Parser lässt sich von dem englischen Wort „to parse“, was als „analysieren“ oder auch „zergliedern“ übersetzt werden kann, herleiten. Hierbei handelt es sich um ein Computerprogramm, durch das Informationen eines Formates in ein anderes Format umgewandelt werden, sodass diese weiterverarbeitet werden können.

Als Teil des Compilers wird der Parser zur Übersetzung des Quellcodes einer Website oder eines Programms in eine Sprache, die durch eine Maschine ausgelesen werden kann genutzt. Dabei Übernimmt er die Aufgabe einen Code richtig aufzuteilen, zu analysieren und umzuwandeln. Damit leistet er die Vorarbeit für den Compiler.

Wie funktioniert ein Parser?

Zunächst wird ein Quelltext mit Hilfe des Parser durch einen lexikalischen Scanner analysiert. Der Scanner wandelt den Quelltext in Eingabesymbole um. Dabei folgt er den Regeln der regulären Grammatik, sodass eine richtige Zerlegung gewährleistet ist.

Anschließend hat er als Aufgabe einen Syntaxbaum zu erstellen. Dieser wird gebildet, indem die Informationseinheiten syntaktisch analysiert und die Ergebnisse hierarchisch gliedert werden. Der Erstellte Syntaxbaum kann nun für die Weiterverarbeitung der Daten genutzt werden.

Welche unterschiedlichen Typen gibt es?

Es wird zwischen zwei grundlegenden Typen unterschieden:

Top-Down-Parser

Beim Top-Down-Parser arbeitet sich der Parser systematisch vom Startsymbol bis zum letzten Symbol hinab. Vom Startsymbol ausgehend leitet er sich Informationen ab und erstellt daraus den Syntaxbaum.

Bottom-Up-Parser

Beim Bottom-Up-Parser startet der Parser auf der niedrigsten Ebene und arbeitet sich nach oben. Beginnend vom einzelnen Token arbeitet er sich zum Startsymbol hinauf und erschließt Zusammenhänge, woraus er den Syntaxbaum erstellt.

Wo werden Parser angewendet?

Sie finden ihre Anwendung bei Websites. Diese bestehen im Hintergrund aus sog. HTML-Codes. Damit dem User die richtigen Informationen angezeigt werden, erarbeitet der Parser im Hintergrund eine Struktur der Daten, die daraufhin ausgelesen und dem Nutzer angezeigt werden.

Darüber hinaus sind sie für Suchmaschinen wie Google oder Bing von Bedeutung. Durch diese können Suchmaschinen Websites analysieren und aufbereiten, sodass diese optimal durchsucht werden können.