.L

L Datei

Lex Language Source File
Frage stellen
SCHNELLE ANTWORT

Eine L-Datei ist eine Lex- oder Flex-Quelldatei - eine Klartext-Spezifikation für einen lexikalischen Analysator (Tokenizer), der in der Compiler- und Interpreter-Entwicklung verwendet wird. Sie kann in jedem Code-Editor geöffnet werden; um den Scanner zu erstellen, führen Sie flex darauf aus. Die Dateiendung wird auch für Lisp-Quellcode und Unix-Manpages verwendet, prüfen Sie daher bei Unklarheiten den Dateiinhalt.

Entwickler: Mike Lesk and Eric Schmidt (Lex, Bell Labs); Vern Paxson (Flex) Kategorie: Developerdateien Offener Standard MIME: text/plain
VERFÜGBAR AUF Windows macOS Linux
Verwandt: .DO · .MD · .HEX · .XSD

Auf dieser Seite

19k+ Erweiterungen indexiert
Zuletzt geprüft Sep 6, 2026

Nicht sicher, was Ihre Datei ist?

Legen Sie eine beliebige Datei in unseren Identifikator - wir lesen nur die ersten Bytes, um das Format zu benennen.

Datei identifizieren

Was ist das L-Dateiformat?

Eine .l-Datei ist eine in der Sprache Lex verfasste Klartext-Spezifikation für einen lexikalischen Analysator. Sie definiert, wie ein Eingabestrom von Zeichen in Token zerlegt werden soll - der erste Schritt beim Bau eines Compilers, Interpreters oder Textverarbeitungswerkzeugs.

Das Format wurde 1975 in den Bell Labs von Mike Lesk und Eric Schmidt als Teil der Unix-Toolchain entwickelt. Heute werden praktisch alle .l-Dateien von Flex (Fast Lexical Analyzer) verarbeitet, dem quelloffenen Nachfolger aus der GNU-Ära, der von Vern Paxson entwickelt wurde, wobei die Quellsyntax weitgehend gleich geblieben ist.

Eine .l-Datei ist in drei Abschnitte unterteilt, die durch %%-Markierungslinien getrennt sind:

  • Definitionen - benannte Regex-Makros und %option-Direktiven
  • Regeln - Paare aus regulären Ausdrücken und C-Aktionscode, die bei einer Übereinstimmung ausgeführt werden
  • Benutzercode - optionale C-Hilfsfunktionen, die wortwörtlich an die Ausgabe angehängt werden

Ein optionaler %{ ... %}-Block im oberen Bereich fügt C-Deklarationen direkt in den generierten Scanner ein. Das Ausführen von flex yourfile.l (oder lex yourfile.l) erzeugt lex.yy.c, eine eigenständige C-Quelldatei, die den Scanner als deterministischen endlichen Automaten implementiert. Diese Ausgabe wird mit einem C-Compiler kompiliert und typischerweise mit einer Yacc/Bison-Grammatikdatei verknüpft, um einen vollständigen Sprachprozessor zu erstellen.

Beachten Sie, dass .l auch für Lisp-Quelldateien und Unix-troff-Manpage-Quellen verwendet wird, daher ist der Dateikontext bei der Identifizierung des Typs entscheidend.

Sicherheit

RISIKO: LOW

Eine .l Lex-Quelle ist Klartext und kann sicher in einem Editor geöffnet werden. Die einzige Vorsicht: Die Regeln enthalten C-Aktionscode, und eine bösartige .l-Datei könnte schädlichen C-Code einbetten, der nach dem Kompilieren ausgeführt wird. Überprüfen Sie .l-Dateien aus nicht vertrauenswürdigen Quellen, bevor Sie flex ausführen und sie kompilieren.

Formatdetails

kurz gefasst
VOLLSTÄNDIGER NAMELex Language Source Filealias Lex source, Flex source file
ENTWICKLERMike Lesk and Eric Schmidt (Lex, Bell Labs); Vern Paxson (Flex)seit Lex, 1975 (Unix); standardized in POSIX (lex utility)
MIME TYPEtext/plain
TYPKlartext-Spezifikation für lexikalische Analysatoren (Quellcode)
STANDARDOffen · lizenzfrei
Diese Erweiterung wird auch verwendet von…
  • Lisp-Quelldatei (.l) - Einige Lisp-Dialekte/Implementierungen verwenden .l für Quellcode; Klartext, aber eine andere Sprache als Lex.
  • Unix Manpage / troff-Quelle (.l) - Abschnitt-l (lokale) Handbuchseiten im nroff/troff-Format; Dokumentation, keine Lexer-Spezifikation.
  • Interleaf / WordPerfect Bibliothek (.l) - Veraltete Bibliotheks- oder Listendateien in älteren Dokumentensystemen; selten.

Programme zum Öffnen von L-Dateien

Windows3 apps
Notepad Open Source Direkt öffnen, um die Lexer-Spezifikation anzuzeigen oder zu bearbeiten.
Visual Studio Code Kostenlos Öffnen Sie die .l zum Lesen/Bearbeiten; installieren Sie eine Lex/Flex-Syntax-Erweiterung für das Highlighting.
Flex (win_flex via WinFlexBison) Open Source Führen Sie „win_flex file.l“ aus, um den C-Scanner-Quellcode unter Windows zu generieren.
macOS1 app
TextEdit / VS Code Kostenlos Zum Lesen/Bearbeiten öffnen; führen Sie „flex file.l“ im Terminal aus, um den Scanner zu erstellen.
Linux2 apps
Flex Open Source Führen Sie „flex file.l“ aus, um lex.yy.c zu erzeugen, und kompilieren Sie dann mit cc.
GNU Emacs / Vim / gedit Open Source Öffnen Sie die .l in einem beliebigen Editor, um die Lexer-Regeln zu lesen oder zu ändern.

Technische Details

technische Spezifikation
Format-TypKlartext-Spezifikation für lexikalische Analysatoren (Quellcode)
KodierungASCII / UTF-8 Klartext; kein binärer Header oder Magic Bytes
DateistrukturDrei Abschnitte, getrennt durch `%%`: Definitionen, Regeln und Benutzer-C-Code
Abschnitt 1 - DefinitionenBenannte Regex-Makros und `%option`-Direktiven (z. B. `%option noyywrap`)
Abschnitt 2 - RegelnPaare aus regulären Ausdrücken und C-Aktionscodeblöcken, die bei Übereinstimmung ausgeführt werden
Abschnitt 3 - BenutzercodeOptionale C-Hilfsfunktionen, die wortwörtlich in die generierte Ausgabedatei kopiert werden
C-Code-InjektionsblockDer `%{ ... %}`-Prolog im oberen Bereich fügt C-Deklarationen in den generierten Scanner ein
Primäre Ausgabe`lex.yy.c` - eine C-Quelldatei, die einen DFA-basierten Scanner implementiert
MIME-Typ`text/plain` (informelles Alias: `text/x-lex`)
Verarbeitungswerkzeuge`lex` (AT&T/POSIX), `flex` (GNU), `win_flex` (Windows via WinFlexBison)
Typische Dateigröße1 KB - 100 KB
Scanner-AlgorithmusKompiliert Regex-Regeln zur Build-Zeit in einen deterministischen endlichen Automaten (DFA)
Häufige KombinationKombiniert mit einer `.y` Yacc- oder Bison-Grammatikdatei, um ein Compiler-Frontend zu bauen
PlattformunterstützungUnix, Linux, macOS nativ; Windows via MSYS2, Cygwin oder WinFlexBison
Mehrdeutigkeit der Endung`.l` wird auch für Lisp-Quelldateien und Unix-troff-Manpages verwendet - Dateikontext erforderlich
VeröffentlichtLex, 1975 (Unix); standardized in POSIX (lex utility)
Neueste VersionFlex 2.6.4 (2017) is the de-facto current implementation reading .l files
Offener StandardJa · lizenzgebührenfrei
Spezifikationpubs.opengroup.org

L-Konvertierungen

Community Q&A

von Nutzern gefragt
Schnelle Frage stellen
Holen Sie sich Hilfe von Menschen, die mit L-Dateien arbeiten. Seien Sie konkret - geben Sie Ihr System und die Softwareversion an.
Kein Konto erforderlich · Antworten meist innerhalb eines Tages

Noch keine Fragen - stellen Sie die erste Frage zu L-Dateien.

Häufig gestellte Fragen

Was ist eine .L-Datei?
Es handelt sich um eine Lex/Flex-Quelldatei - eine Klartext-Spezifikation eines lexikalischen Analysators (Tokenizer). Flex kompiliert diese in C-Quellcode für einen Scanner. „.l“ wird auch für Lisp und Manpages verwendet.
Wie öffne ich eine .l-Datei?
Öffnen Sie sie in einem beliebigen Code-Editor (VS Code, Notepad++, Vim, Emacs). Es handelt sich um reinen Text.
Wie führe ich eine .l-Datei aus oder kompiliere sie?
Führen Sie „flex yourfile.l“ aus, um lex.yy.c zu generieren, und kompilieren Sie dann diese C-Datei (z. B. „cc lex.yy.c -lfl“). Unter Windows verwenden Sie win_flex von WinFlexBison.
Was ist der Unterschied zwischen einer .l- und einer .y-Datei?
.l ist eine Lex/Flex-Lexer-Spezifikation (Tokenisierung); .y ist eine Yacc/Bison-Grammatik (Parsing). Sie werden normalerweise zusammen verwendet, um einen Compiler zu bauen.
Ist .l dasselbe wie eine Lisp-Datei?
Nicht unbedingt. Einige Lisp-Dialekte verwenden .l für Quellcode, aber im Bereich der Compiler-Werkzeuge bedeutet .l fast immer eine Lex/Flex-Lexer-Spezifikation. Prüfen Sie den Dateiinhalt.
Wird Lex noch verwendet oder ist es jetzt Flex?
Flex ist die moderne, gepflegte Implementierung und liest dieselben .l-Dateien; das ursprüngliche AT&T Lex ist weitgehend historisch, aber das .l-Quellformat bleibt Standard.

Quellen

1POSIX lex utility specificationpubs.opengroup.org
2Flex - The Fast Lexical Analyzergithub.com

Weiter entdecken

in der Datenbank

Top-Erweiterungen dieser Woche

1.AQQAQQ Instant Messenger File
2.CRDOWNLOADChrome Partial Download File
3.MDMarkdown Document
4.BINCD/DVD Disc Image (BIN/CUE)
5.PARTPartial Download File
6.RPMSGRestricted Permission Message
7.NOMEDIAAndroid No-Media Marker File
8.EXEWindows Executable (Portable Executable)
9.AVIFAV1 Image File Format (AVIF)
10.ICSiCalendar data file

Verwandte Erweiterungen

.DOStata Do-File
.MDMarkdown Document
.HEXIntel HEX File
.XSDXML Schema Definition
.MAPSource Map (JavaScript / CSS)
.CONFIGConfiguration File

Kostenlose Datei-Tools

Ein Browser-Dateiidentifikator und Bildkonverter - alles läuft auf Ihrem Gerät.

Toolbox öffnen

Dateierweiterungen A-Z durchsuchen