.L

L-bestand

Lex Language Source File
Stel een vraag
SNEL ANTWOORD

Een L-bestand is een Lex- of Flex-bronbestand - een platte-tekstspecificatie voor een lexicale analyzer (tokenizer), gebruikt bij de ontwikkeling van compilers en interpreters. Open het in elke code-editor; om de scanner te bouwen, voert u flex erop uit. De extensie wordt ook gebruikt voor Lisp-broncode en Unix-man-pagina's, dus controleer de bestandsinhoud bij onduidelijkheid.

Ontwikkelaar: Mike Lesk and Eric Schmidt (Lex, Bell Labs); Vern Paxson (Flex) Categorie: Ontwikkelaarsbestanden Open standaard MIME: text/plain
OPENT OP Windows macOS Linux
Gerelateerd: .DO · .MD · .HEX · .XSD

Op deze pagina

19k+ extensies geïndexeerd
Laatst beoordeeld op Sep 6, 2026

Niet zeker wat uw bestand is?

Sleep een bestand naar onze identificatietool - we lezen alleen de eerste bytes om het formaat te benoemen.

Identificeer een bestand

Wat is het L-bestandsformaat?

Een .l-bestand is een platte-tekstspecificatie voor een lexicale analyzer, geschreven in de Lex-taal. Het definieert hoe een invoerstroom van tekens moet worden opgesplitst in tokens - de eerste stap bij het bouwen van een compiler, interpreter of tekstverwerkingstool.

Het formaat werd in 1975 bij Bell Labs gecreëerd door Mike Lesk en Eric Schmidt als onderdeel van de Unix-toolchain. Tegenwoordig worden vrijwel alle .l-bestanden verwerkt door Flex (Fast Lexical Analyzer), de open-source opvolger uit het GNU-tijdperk ontwikkeld door Vern Paxson, hoewel de bronsyntaxis grotendeels hetzelfde is gebleven.

Een .l-bestand is verdeeld in drie secties, gescheiden door %%-markeringsregels:

  • Definities - benoemde regex-macro's en %option-richtlijnen
  • Regels - paren van reguliere expressies en C-actiecode die worden uitgevoerd bij een match
  • Gebruikerscode - optionele C-hulpfuncties die letterlijk aan de uitvoer worden toegevoegd

Een optioneel %{ ... %}-blok bovenaan injecteert C-declaraties rechtstreeks in de gegenereerde scanner. Het uitvoeren van flex yourfile.l (of lex yourfile.l) produceert lex.yy.c, een zelfstandig C-bronbestand dat de scanner implementeert als een deterministische eindige automaat. Die uitvoer wordt gecompileerd met een C-compiler en doorgaans gekoppeld aan een Yacc/Bison-grammaticabestand om een volledige taalprocessor te bouwen.

Let op dat .l ook wordt gebruikt voor Lisp-bronbestanden en Unix troff-handleidingspagina's, dus de context van het bestand is belangrijk bij het identificeren van het type.

Beveiliging & veiligheid

RISICO: LOW

Een .l Lex-bronbestand is platte tekst en veilig te openen in een editor. De enige waarschuwing: de regels bevatten C-actiecode, en een kwaadaardig .l-bestand zou schadelijke C-code kunnen bevatten die wordt uitgevoerd zodra deze is gecompileerd. Controleer .l-bestanden van onbetrouwbare bronnen voordat u flex uitvoert en ze bouwt.

Formaatdetails

in een notendop
VOLLEDIGE NAAMLex Language Source Fileook bekend als Lex source, Flex source file
ONTWIKKELAARMike Lesk and Eric Schmidt (Lex, Bell Labs); Vern Paxson (Flex)sinds Lex, 1975 (Unix); standardized in POSIX (lex utility)
MIME-TYPEtext/plain
TYPEPlatte-tekstspecificatie voor lexicale analyzer (broncode)
STANDAARDOpen · royaltyvrij
GERELATEERD.do.md.hex.xsd
Deze extensie wordt ook gebruikt door…
  • Lisp-bronbestand (.l) - Sommige Lisp-dialecten/implementaties gebruiken .l voor broncode; platte tekst, maar een andere taal dan Lex.
  • Unix man-pagina / troff-bron (.l) - Sectie-l (lokale) handleidingspagina's in nroff/troff-broncode; documentatie, geen lexerspecificatie.
  • Interleaf / WordPerfect-bibliotheek (.l) - Verouderde bibliotheek- of lijstbestanden in oudere documentsystemen; zeldzaam.

Programma's die L-bestanden openen

Windows3 apps
Notepad Open-source Rechtstreeks openen om de lexerspecificatie te bekijken/bewerken.
Visual Studio Code Gratis Open de .l om te lezen/bewerken; installeer een Lex/Flex-syntaxisextensie voor markering.
Flex (win_flex via WinFlexBison) Open-source Voer „win_flex file.l” uit om de C-scannerbroncode op Windows te genereren.
macOS1 app
TextEdit / VS Code Gratis Openen om te lezen/bewerken; voer „flex file.l” uit in de Terminal om de scanner te bouwen.
Linux2 apps
Flex Open-source Voer „flex file.l” uit om lex.yy.c te genereren, en compileer vervolgens met cc.
GNU Emacs / Vim / gedit Open-source Open de .l in een willekeurige editor om de lexerregels te lezen of aan te passen.

Technische details

diepe specificaties
FormaattypePlatte-tekstspecificatie voor lexicale analyzer (broncode)
CoderingASCII / UTF-8 platte tekst; geen binaire header of magic bytes
BestandsstructuurDrie secties gescheiden door `%%`: definities, regels en C-gebruikerscode
Sectie 1 - DefinitiesBenoemde regex-macro's en `%option`-richtlijnen (bijv. `%option noyywrap`)
Sectie 2 - RegelsParen van reguliere expressiepatronen en C-actiecodeblokken uitgevoerd bij een match
Sectie 3 - GebruikerscodeOptionele C-hulpfuncties die letterlijk in het gegenereerde uitvoerbestand worden gekopieerd
C-code injectieblokDe `%{ ... %}`-proloog bovenaan injecteert C-declaraties in de gegenereerde scanner
Primaire uitvoer`lex.yy.c` - een C-bronbestand dat een op DFA gebaseerde scanner implementeert
MIME-type`text/plain` (informele alias: `text/x-lex`)
Verwerkingstools`lex` (AT&T/POSIX), `flex` (GNU), `win_flex` (Windows via WinFlexBison)
Typische bestandsgrootte1 KB - 100 KB
Scanner-algoritmeCompileert regex-regels naar een deterministische eindige automaat (DFA) tijdens het bouwen
Veelvoorkomende koppelingGecombineerd met een `.y` Yacc- of Bison-grammaticabestand om een volledige compiler-frontend te bouwen
PlatformondersteuningUnix, Linux, macOS standaard; Windows via MSYS2, Cygwin of WinFlexBison
Extensie-ambiguïteit`.l` wordt ook gebruikt voor Lisp-bronbestanden en Unix troff man-pagina-broncode - bestandscontext vereist
UitgebrachtLex, 1975 (Unix); standardized in POSIX (lex utility)
Laatste versieFlex 2.6.4 (2017) is the de-facto current implementation reading .l files
Open standaardJa · royaltyvrij
Specificatiepubs.opengroup.org

L conversies

Community V&A

gevraagd door gebruikers
Stel een korte vraag
Krijg hulp van mensen die met L-bestanden werken. Wees specifiek - vermeld uw systeem en softwareversie.
Geen account nodig · antwoorden meestal binnen een dag

Nog geen vragen - wees de eerste om iets te vragen over L-bestanden.

Veelgestelde vragen

Wat is een .L-bestand?
Het is een Lex/Flex-bronbestand - een platte-tekstspecificatie van een lexicale analyzer (tokenizer). Flex compileert dit naar C-broncode voor een scanner. „.l” wordt ook gebruikt voor Lisp en man-pagina's.
Hoe open ik een .l-bestand?
Open het in een willekeurige code-editor (VS Code, Notepad++, Vim, Emacs). Het is platte tekst.
Hoe voer ik een .l-bestand uit of hoe compileer ik het?
Voer „flex yourfile.l” uit om lex.yy.c te genereren, en compileer dat C-bestand vervolgens (bijv. „cc lex.yy.c -lfl”). Gebruik op Windows win_flex uit WinFlexBison.
Wat is het verschil tussen een .l- en een .y-bestand?
„.l” is een Lex/Flex-lexerspecificatie (tokenizing); „.y” is een Yacc/Bison-grammatica (parsing). Ze worden meestal samen gebruikt om een compiler te bouwen.
Is .l hetzelfde als een Lisp-bestand?
Niet noodzakelijkerwijs. Sommige Lisp-dialecten gebruiken .l voor broncode, maar in compiler-tooling betekent .l bijna altijd een Lex/Flex-lexerspecificatie. Controleer de inhoud van het bestand.
Wordt Lex nog steeds gebruikt, of is het nu Flex?
Flex is de moderne, onderhouden implementatie en leest dezelfde .l-bestanden; de originele AT&T Lex is grotendeels historisch, maar het .l-bronformaat blijft de standaard.

Referenties

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

Blijf ontdekken

door de database

Populaire extensies deze week

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

Gerelateerde extensies

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

Gratis bestandstools

Een bestandsidentificatie en afbeeldingsconverter in de browser - alles draait op uw eigen apparaat.

Open de gereedschapskist

Blader door bestandsextensies A-Z