Metacharakter

A Metacharakter ist ein Charakter, der für ein Computerprogramm eine besondere Bedeutung hat, z. B. einen Shell -Interpreter oder einen regelmäßigen Ausdruck (REGEX) -Motor.

In POSIX erweiterten regulären Ausdrücke gibt es 14 Metacharacter, die sein müssen entkam (Vorangegangen von einem Backslash (\)) Um ihre besondere Bedeutung fallen zu lassen und buchstäblich in einen Ausdruck behandelt zu werden: Öffnen und Schließen von Quadratklammern ([ und ]); Backslash (\); Pflege (^); Dollarzeichen ($); Periode/Full Stop/DOT (.); vertikales Balken/Rohrsymbol (|); Fragezeichen (?); Sternchen (*); Plus und minus Zeichen (+ und -); Öffnen und Schließen von lockigen Klammern/Zahnspangen ({ und }); und Öffnen und Schließen von Klammern (( und )).

Zum Beispiel zum arithmetischen Ausdruck übereinstimmen (1+1)*3 = 6 Mit einer Regex ist der richtige Regex \ (1 \ +1 \) \*3 = 6; Andernfalls haben die Klammern, plus Zeichen und Sternchen besondere Bedeutungen.

Andere Beispiele

Einige andere Charaktere haben in einigen Umgebungen möglicherweise eine besondere Bedeutung.

Flucht

Der Begriff "einem Metacharakter zu entkommen" bedeutet, den Metacharacter ineffektiv zu machen (um ihn von seiner besonderen Bedeutung zu entfernen), was dazu führt, dass er seine wörtliche Bedeutung hat. Zum Beispiel in Pcre, ein Punkt (".") steht für jeden einzelnen Charakter. Der reguläre Ausdruck "a.c" passt zu "ABC", "A3C" oder sogar "A c". Wenn jedoch das "." Es wird entkommen, es wird seine Bedeutung als Metacharacter verlieren und buchstäblich als "." interpretiert, wodurch der reguläre Ausdruck "a \ .c" nur mit der Zeichenfolge "a.c" übereinstimmt.

Die übliche Art, einem Charakter in einer Regex und anderswo zu entkommen, besteht darin, ihn mit einem Backslash ("\") zu beleben. Andere Umgebungen können unterschiedliche Methoden wie MS-DOS/Windows-Eingabeaufforderung anwenden, wobei stattdessen eine Pflege ("^" verwendet wird.[2]

Siehe auch

Verweise

  1. ^ "Charakterentität Referenzen in HTML 4". www.w3.org. W3c. 24. Dezember 1999. Abgerufen 2018-11-19.
  2. ^ a b c "Befehlsschalenübersicht". docs.microsoft.com. Microsoft. 10. September 2009. Abgerufen 2018-11-19.
  3. ^ "Die offenen Gruppenbasis -Spezifikationen Ausgabe 7: fprintf". Pubs.opengroup.org. Die offene Gruppe. 2018. Abgerufen 2018-11-19.
  4. ^ a b "Wie (transact-sql)" ". docs.microsoft.com. Microsoft. 14. März 2017. Abgerufen 2018-11-19.