Wikipedia · einfach zusammengefasst · Stand
Metazeichen
Metazeichen oder Funktionszeichen sind Zeichen in einer Datei oder Zeichenkette, die innerhalb eines bestimmten Kontexts nicht für sich selbst stehen, …
Inhalt5 Abschnitte
Grundidee und Maskierung
Metazeichen, auch Funktionszeichen genannt, sind Zeichen in einer Datei oder Zeichenkette, die in einem bestimmten Kontext nicht für sich selbst stehen. Stattdessen steuern sie – ähnlich wie Steuerzeichen – auf besondere Weise, wie ein Programm die Daten verarbeitet. Ihre Bedeutung ist deshalb nicht allgemein festgelegt, sondern hängt vom jeweils verwendeten Programm und vom Verarbeitungskontext ab.
Häufig dienen nicht-alphanumerische Zeichen, also Zeichen außerhalb von Buchstaben und Ziffern, als Metazeichen. Soll ein solches Zeichen nicht seine besondere Funktion ausüben, sondern als gewöhnliches Zeichen erscheinen, muss es oft maskiert werden. Eine Maskierung kennzeichnet das Zeichen so, dass das Programm seinen besonderen Status aufhebt.
Auszeichnung und Programmcode
In Auszeichnungssprachen legen Metazeichen die Struktur oder Darstellung eines Textes fest. In XML sind < und & an jeder Stelle Metazeichen. Die Zeichen " und ' haben diese Funktion innerhalb von Attributwerten.
Im Wikitext der Wikipedia erzeugen doppelte eckige Klammern einen internen Link. Die Schreibweise [[Begriff]] verlinkt „Begriff“ mit einer anderen Seite innerhalb der Wikipedia. Im fertigen Text werden die Klammern nicht angezeigt; sichtbar ist nur der verlinkte Begriff.
In Programmiersprachen werden Metazeichen vor allem für Operatoren und Separatoren verwendet. Operatoren drücken beispielsweise eine Operation aus, während Separatoren Bestandteile des Programmcodes voneinander abgrenzen. In C und an C angelehnten Sprachen wie C++, Java, PHP, Perl, Tcl, Python, Ruby und C# gehören meist folgende Zeichen dazu: ! " % & / ( ) = ? { [ ] } \ + * ~ < > | , ; . : - ^ und '.
Suchmuster und Wildcards
Wildcards sind Metazeichen, die einfache Quantifizierungen in Suchmustern ermöglichen. Sie werden beispielsweise in Textshells eingesetzt, um mehrere passende Dateinamen auf einmal zu erfassen.
Ein bekanntes Muster ist .. Es schließt alle Dateinamen ein, die eine Dateinamenserweiterung besitzen. Die Zeichen des Musters werden dabei nicht nur als gewöhnliche Punkte oder Sternchen behandelt, sondern erhalten durch den jeweiligen Suchkontext ihre besondere Funktion.
Reguläre Ausdrücke
Ein regulärer Ausdruck, englisch „regular expression“, beschreibt ein Such- oder Textmuster. Seine Metazeichen stehen nicht für sich selbst, sondern dienen unter anderem als Anker, Zeichenklassen, Quantifizierer, Gruppierungen oder Alternativen. Ein Anker legt eine Position fest, eine Zeichenklasse beschreibt mögliche Zeichen und ein Quantifizierer bestimmt Wiederholungen.
In den meisten Implementierungen haben folgende Zeichen besondere Aufgaben:
- ^ ist der Anker für den Anfang einer Zeile oder eines Strings.
- $ ist der Anker für das Ende einer Zeile oder eines Strings.
- ? + * { } sind Quantifikatoren beziehungsweise Wiederholungsfaktoren.
- \ wandelt den Meta-Status eines Zeichens: Ein Metazeichen verliert seine besondere Bedeutung oder ein Nicht-Metazeichen erhält eine besondere Bedeutung.
- . [ ] dienen als Zeichenklassen.
- & dient als Rückreferenz.
- ( ) gruppieren Bestandteile des Ausdrucks.
- | kennzeichnet eine Alternative.
Trennzeichen in Datendateien
Auch beim Austausch strukturierter Daten können Zeichen eine Metafunktion besitzen. Beim Import einer CSV-Datei in ein Tabellenkalkulationsprogramm dient ein Zeichen als Trennzeichen zwischen einzelnen Elementen. Meist ist dies ein Komma, ein Semikolon oder ein Tabulatorzeichen. Durch das Trennzeichen erkennt das Programm, welche Elemente in unterschiedliche Tabellenzellen gehören. Das Zeichen selbst erscheint nicht in der fertigen Tabelle.
Beim Standard EDIFACT kann das optionale UNA-Segment dem EDI-Programm mitteilen, welche Zeichen in der jeweiligen Datei als Datenelement-Trenner, Segment-Trenner, Maskierungszeichen und Elementgruppen-Trenner verwendet werden. Diese Funktion ist vom verarbeitenden Programm abhängig: Für einen gewöhnlichen Texteditor haben dieselben Zeichen keine solche besondere Bedeutung.