.L

Plik L

Lex Language Source File
Zadaj pytanie
SZYBKA ODPOWIEDŹ

Plik L to plik źródłowy Lex lub Flex - tekstowa specyfikacja analizatora leksykalnego (tokenizera), używana przy tworzeniu kompilatorów i interpreterów. Można go otworzyć w dowolnym edytorze kodu; aby zbudować skaner, należy uruchomić na nim program flex. Rozszerzenie to jest również używane dla źródeł Lisp oraz stron podręcznika Unix (man pages), więc w razie niejasności należy sprawdzić zawartość pliku.

Deweloper: Mike Lesk and Eric Schmidt (Lex, Bell Labs); Vern Paxson (Flex) Kategoria: Pliki developerskie Otwarty standard MIME: text/plain
OTWIERA SIĘ NA Windows macOS Linux
Powiązane: .DO · .MD · .HEX · .XSD

Na tej stronie

Zindeksowano 19k+ rozszerzeń
Ostatnia weryfikacja Sep 6, 2026

Nie wiesz, co to za plik?

Przeciągnij dowolny plik do naszego identyfikatora - odczytujemy tylko pierwsze bajty, aby nazwać format.

Zidentyfikuj plik

Co to jest format pliku L?

Plik .l to tekstowa specyfikacja analizatora leksykalnego napisana w języku Lex. Definiuje ona, w jaki sposób wejściowy strumień znaków powinien być dzielony na tokeny - co stanowi pierwszy krok w budowie kompilatora, interpretera lub narzędzia do przetwarzania tekstu.

Format został stworzony w Bell Labs w 1975 roku przez Mike'a Leska i Erica Schmidta jako część zestawu narzędzi Unix. Obecnie praktycznie wszystkie pliki .l są przetwarzane przez Flex (Fast Lexical Analyzer), otwartoźródłowego następcę z ery GNU opracowanego przez Verna Paxsona, choć składnia źródłowa pozostaje w dużej mierze taka sama.

Plik .l jest podzielony na trzy sekcje oddzielone liniami ze znacznikiem %%:

  • Definicje - nazwane makra wyrażeń regularnych i dyrektywy %option
  • Reguły - pary wyrażeń regularnych i kodu akcji w języku C, które są wykonywane po dopasowaniu
  • Kod użytkownika - opcjonalne pomocnicze funkcje C dołączane dosłownie do pliku wynikowego

Opcjonalny blok %{ ... %} u góry pliku wstrzykuje deklaracje C bezpośrednio do wygenerowanego skanera. Uruchomienie polecenia flex yourfile.l (lub lex yourfile.l) generuje lex.yy.c, samodzielny plik źródłowy C implementujący skaner jako deterministyczny automat skończony. Wynik ten jest kompilowany kompilatorem C i zazwyczaj łączony z plikiem gramatyki Yacc/Bison w celu zbudowania kompletnego procesora języka.

Należy zauważyć, że rozszerzenie .l jest również używane dla plików źródłowych Lisp oraz źródeł stron podręcznika Unix troff, więc kontekst pliku ma znaczenie przy identyfikacji jego typu.

Bezpieczeństwo

RYZYKO: LOW

Źródło Lex .l to zwykły tekst i jest bezpieczne do otwarcia w edytorze. Jedyna uwaga: reguły zawierają kod akcji C, a złośliwy plik .l mógłby zawierać szkodliwy kod C, który zostanie uruchomiony po skompilowaniu. Należy sprawdzać pliki .l z niezaufanych źródeł przed uruchomieniem flex i ich budowaniem.

Szczegóły formatu

w pigułce
PEŁNA NAZWALex Language Source Fileznany również jako Lex source, Flex source file
DEWELOPERMike Lesk and Eric Schmidt (Lex, Bell Labs); Vern Paxson (Flex)od Lex, 1975 (Unix); standardized in POSIX (lex utility)
TYP MIMEtext/plain
TYPTekstowa specyfikacja analizatora leksykalnego (kod źródłowy)
STANDARDOtwarty · bezpłatny
POWIĄZANE.do.md.hex.xsd
To rozszerzenie jest również używane przez…
  • Plik źródłowy Lisp (.l) - Niektóre dialekty/implementacje Lisp używają .l dla kodu źródłowego; zwykły tekst, ale inny język niż Lex.
  • Strona podręcznika Unix / źródło troff (.l) - Strony podręcznika sekcji-l (lokalne) w formacie nroff/troff; dokumentacja, nie specyfikacja leksera.
  • Biblioteka Interleaf / WordPerfect (.l) - Starsze pliki bibliotek lub list w dawnych systemach dokumentów; rzadkie.

Programy otwierające pliki L

Windows3 apps
Notepad Open-source Otwórz bezpośrednio, aby przeglądać lub edytować specyfikację leksera.
Visual Studio Code Darmowy Otwórz .l, aby czytać/edytować; zainstaluj rozszerzenie składni Lex/Flex dla podświetlania.
Flex (win_flex via WinFlexBison) Open-source Uruchom „win_flex file.l”, aby wygenerować źródło skanera C w systemie Windows.
macOS1 app
TextEdit / VS Code Darmowy Otwórz, aby czytać/edytować; uruchom „flex file.l” w Terminalu, aby zbudować skaner.
Linux2 apps
Flex Open-source Uruchom „flex file.l”, aby wygenerować lex.yy.c, a następnie skompiluj za pomocą cc.
GNU Emacs / Vim / gedit Open-source Otwórz .l w dowolnym edytorze, aby czytać lub modyfikować reguły leksera.

Szczegóły techniczne

specyfikacja
Typ formatuTekstowa specyfikacja analizatora leksykalnego (kod źródłowy)
KodowanieZwykły tekst ASCII / UTF-8; brak nagłówka binarnego lub magicznych bajtów
Struktura plikuTrzy sekcje oddzielone przez `%%`: definicje, reguły i kod C użytkownika
Sekcja 1 - DefinicjeNazwane makra regex i dyrektywy `%option` (np. `%option noyywrap`)
Sekcja 2 - RegułyPary wzorców wyrażeń regularnych i bloków kodu akcji C wykonywanych przy dopasowaniu
Sekcja 3 - Kod użytkownikaOpcjonalne funkcje pomocnicze C kopiowane dosłownie do wygenerowanego pliku wynikowego
Blok wstrzykiwania kodu CProlog `%{ ... %}` u góry wstrzykuje deklaracje C do wygenerowanego skanera
Główny wynik`lex.yy.c` - plik źródłowy C implementujący skaner oparty na DFA
Typ MIME`text/plain` (nieformalny alias: `text/x-lex`)
Narzędzia przetwarzające`lex` (AT&T/POSIX), `flex` (GNU), `win_flex` (Windows przez WinFlexBison)
Typowy rozmiar pliku1 KB - 100 KB
Algorytm skaneraKompiluje reguły regex do deterministycznego automatu skończonego (DFA) w czasie budowy
Typowe połączenieŁączony z plikiem gramatyki `.y` Yacc lub Bison w celu zbudowania kompletnego front-endu kompilatora
Obsługa platformUnix, Linux, macOS natywnie; Windows przez MSYS2, Cygwin lub WinFlexBison
Niejednoznaczność rozszerzenia`.l` jest również używane dla plików źródłowych Lisp i źródeł stron man Unix troff - wymagany kontekst pliku
WydanoLex, 1975 (Unix); standardized in POSIX (lex utility)
Najnowsza wersjaFlex 2.6.4 (2017) is the de-facto current implementation reading .l files
Otwarty standardTak · bezpłatny (royalty-free)
Specyfikacjapubs.opengroup.org

Konwersje L

Pytania i odpowiedzi społeczności

pytania użytkowników
Zadaj szybkie pytanie
Uzyskaj pomoc od osób pracujących z plikami L. Bądź precyzyjny - podaj system i wersję oprogramowania.
Konto nie jest wymagane · odpowiedzi zazwyczaj w ciągu doby

Brak pytań - bądź pierwszą osobą, która zapyta o pliki L.

Najczęściej zadawane pytania

Co to jest plik .L?
Jest to plik źródłowy Lex/Flex - tekstowa specyfikacja analizatora leksykalnego (tokenizera). Flex kompiluje go do kodu źródłowego C dla skanera. Rozszerzenie „.l” jest również używane dla języka Lisp i stron podręcznika man.
Jak otworzyć plik .l?
Można go otworzyć w dowolnym edytorze kodu (VS Code, Notepad++, Vim, Emacs). Jest to zwykły tekst.
Jak uruchomić lub skompilować plik .l?
Uruchom „flex twojplik.l”, aby wygenerować lex.yy.c, a następnie skompiluj ten plik C (np. „cc lex.yy.c -lfl”). W systemie Windows użyj win_flex z pakietu WinFlexBison.
Jaka jest różnica między plikiem .l a .y?
.l to specyfikacja leksera Lex/Flex (tokenizacja); .y to gramatyka Yacc/Bison (parsowanie). Zazwyczaj są używane razem do budowy kompilatora.
Czy .l to to samo co plik Lisp?
Niekoniecznie. Niektóre dialekty Lisp używają .l dla kodu źródłowego, ale w narzędziach kompilatorowych .l prawie zawsze oznacza specyfikację leksera Lex/Flex. Sprawdź zawartość pliku.
Czy Lex jest nadal używany, czy teraz używa się Flex?
Flex jest nowoczesną, rozwijaną implementacją i odczytuje te same pliki .l; oryginalny AT&T Lex ma znaczenie głównie historyczne, ale format źródłowy .l pozostaje standardem.

Źródła

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

Odkrywaj dalej

w całej bazie danych

Najpopularniejsze rozszerzenia w tym tygodniu

1.AQQAQQ Instant Messenger File
2.MDMarkdown Document
3.CRDOWNLOADChrome Partial Download File
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

Powiązane rozszerzenia

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

Darmowe narzędzia do plików

Identyfikator plików i konwerter obrazów w przeglądarce - wszystko działa na Twoim urządzeniu.

Otwórz przybornik

Przeglądaj rozszerzenia plików A-Z