.L

L ファイル

Lex Language Source File
質問する
クイック回答

LファイルはLexまたはFlexのソースファイルであり、コンパイラやインタプリタの開発で使用される字句解析器(トークナイザ)のプレーンテキスト仕様書です。任意のコードエディタで開くことができ、スキャナをビルドするには、そのファイルに対してflexを実行します。この拡張子はLispのソースやUnixのmanページにも使用されるため、不明な場合はファイルの内容を確認してください。

開発元: Mike Lesk and Eric Schmidt (Lex, Bell Labs); Vern Paxson (Flex) カテゴリ: 開発用ファイル オープンスタンダード MIME: text/plain
対応OS Windows macOS Linux
関連: .DO · .MD · .HEX · .XSD

このページの内容

19k+ 個の拡張子を索引済み
最終確認日:Sep 6, 2026

ファイルの種類がわかりませんか?

ファイルを識別ツールにドロップしてください。最初の数バイトを読み取って形式を特定します。

ファイルを識別する

L ファイル形式とは?

.lファイルは、Lex言語で記述されたプレーンテキストの字句解析器仕様書です。これは、入力文字列をどのようにトークンに分割するかを定義するもので、コンパイラ、インタプリタ、またはテキスト処理ツールの構築における最初のステップとなります。

この形式は、1975年にBell LabsのMike LeskとEric SchmidtによってUnixツールチェーンの一部として作成されました。今日、事実上すべての.lファイルは、Vern Paxsonによって開発されたGNU時代のオープンソースの後継ツールであるFlex (Fast Lexical Analyzer)によって処理されますが、ソースの構文は大部分が共通しています。

.lファイルは、%%マーカー行によって区切られた3つのセクションに分かれています。

  • 定義 (Definitions) - 名前の付いた正規表現マクロと%optionディレクティブ
  • ルール (Rules) - 正規表現と、一致したときに実行されるC言語のアクションコードのペア
  • ユーザーコード (User code) - 出力にそのまま追加されるオプションのヘルパーC関数

上部付近にあるオプションの%{ ... %}ブロックは、生成されるスキャナにC言語の宣言を直接注入します。flex yourfile.l(またはlex yourfile.l)を実行すると、決定性有限オートマトンとしてスキャナを実装した、自己完結型のCソースファイルであるlex.yy.cが生成されます。その出力はCコンパイラでコンパイルされ、通常はYacc/Bison文法ファイルとリンクされて、完全な言語プロセッサが構築されます。

なお、.lはLispソースファイルやUnixのtroffマニュアルページソースにも使用されるため、種類を特定する際にはファイルの文脈が重要になります。

セキュリティと安全性

リスク: LOW

.l Lexソースはプレーンテキストであり、エディタで安全に開くことができます。唯一の注意点として、ルールにはC言語のアクションコードが含まれており、悪意のある.lファイルにはコンパイル時に実行される有害なCコードが埋め込まれている可能性があります。信頼できないソースからの.lファイルは、flexを実行してビルドする前に内容を確認してください。

形式の詳細

概要
正式名称Lex Language Source File別名 Lex source, Flex source file
開発元Mike Lesk and Eric Schmidt (Lex, Bell Labs); Vern Paxson (Flex)登場時期 Lex, 1975 (Unix); standardized in POSIX (lex utility)
MIME タイプtext/plain
タイププレーンテキスト字句解析器仕様書(ソースコード)
標準規格オープン・ロイヤリティフリー
この拡張子は以下でも使用されています…
  • Lispソースファイル (.l) - 一部のLisp方言/実装がソースコードに使用します。プレーンテキストですが、Lexとは異なる言語です。
  • Unix manページ / troffソース (.l) - nroff/troffソースにおけるセクションl(ローカル)のマニュアルページ。ドキュメントであり、レキサー仕様ではありません。
  • Interleaf / WordPerfect ライブラリ (.l) - 古いドキュメントシステムのレガシーライブラリまたはリストファイル。稀です。

L ファイルを開くプログラム

Windows3 apps
Notepad オープンソース レキサー仕様を表示・編集するために直接開きます。
Visual Studio Code 無料 .lを開いて閲覧・編集できます。ハイライト表示のためにLex/Flex構文拡張機能をインストールしてください。
Flex (win_flex via WinFlexBison) オープンソース Windowsで«win_flex file.l»を実行して、Cスキャナソースを生成します。
macOS1 app
TextEdit / VS Code 無料 閲覧・編集のために開きます。ターミナルで«flex file.l»を実行してスキャナをビルドします。
Linux2 apps
Flex オープンソース «flex file.l»を実行してlex.yy.cを生成し、ccでコンパイルします。
GNU Emacs / Vim / gedit オープンソース 任意のエディタで.lを開き、レキサールールを閲覧または修正します。

技術的詳細

詳細仕様
フォーマットタイププレーンテキスト字句解析器仕様書(ソースコード)
エンコーディングASCII / UTF-8 プレーンテキスト。バイナリヘッダーやマジックバイトなし
ファイル構造«%%»で区切られた3つのセクション:定義、ルール、ユーザーCコード
セクション1 - 定義名前付き正規表現マクロと«%option»ディレクティブ(例:«%option noyywrap»)
セクション2 - ルール正規表現パターンと、一致時に実行されるCアクションコードブロックのペア
セクション3 - ユーザーコード生成された出力ファイルにそのままコピーされるオプションのCヘルパー関数
Cコード注入ブロック上部付近の«%{ ... %}»プロローグにより、生成されたスキャナにC言語の宣言を注入
主な出力«lex.yy.c» - DFAベースのスキャナを実装したCソースファイル
MIMEタイプ`text/plain`(非公式エイリアス:`text/x-lex`)
処理ツール`lex` (AT&T/POSIX), `flex` (GNU), `win_flex` (Windows via WinFlexBison)
一般的なファイルサイズ1 KB - 100 KB
スキャナアルゴリズムビルド時に正規表現ルールを決定性有限オートマトン(DFA)にコンパイル
一般的なペアリング完全なコンパイラフロントエンドを構築するために、`.y` YaccまたはBison文法ファイルと組み合わされる
プラットフォームサポートUnix, Linux, macOSはネイティブ対応。WindowsはMSYS2, Cygwin, またはWinFlexBison経由
拡張子の曖昧性`.l`はLispソースファイルやUnix troff manページソースにも使用されるため、ファイルの文脈が必要
リリース日Lex, 1975 (Unix); standardized in POSIX (lex utility)
最新バージョンFlex 2.6.4 (2017) is the de-facto current implementation reading .l files
オープンスタンダードはい · ロイヤリティフリー
仕様書pubs.opengroup.org

L の変換

コミュニティ Q&A

ユーザーからの質問
質問する
L ファイルを扱うユーザーからヘルプを得られます。OSやソフトウェアのバージョンなど、具体的に記載してください。
アカウント不要 ・ 通常1日以内に回答されます

まだ質問はありません。L ファイルについて最初の質問をしてみましょう。

よくある質問

.Lファイルとは何ですか?
これはLex/Flexのソースファイルであり、字句解析器(トークナイザ)のプレーンテキスト仕様書です。Flexはこれをスキャナ用のCソースにコンパイルします。«.l»はLispやmanページにも使用されます。
.lファイルを開くにはどうすればよいですか?
任意のコードエディタ(VS Code、Notepad++、Vim、Emacs)で開くことができます。これはプレーンテキストです。
.lファイルを実行またはコンパイルするにはどうすればよいですか?
«flex yourfile.l»を実行してlex.yy.cを生成し、そのCファイルをコンパイルします(例:«cc lex.yy.c -lfl»)。WindowsではWinFlexBisonのwin_flexを使用してください。
.lファイルと.yファイルの違いは何ですか?
.lはLex/Flexのレキサー仕様(トークン化)であり、.yはYacc/Bisonの文法仕様(パース)です。これらは通常、コンパイラを構築するためにセットで使用されます。
.lはLispファイルと同じですか?
必ずしもそうではありません。一部のLisp方言はソースコードに.lを使用しますが、コンパイラツールにおいては、.lはほぼ常にLex/Flexのレキサー仕様を意味します。ファイルの内容を確認してください。
Lexはまだ使われていますか、それとも今はFlexですか?
Flexは現代的でメンテナンスされている実装であり、同じ.lファイルを読み取ります。オリジナルのAT&T Lexは主に歴史的なものですが、.lソース形式は標準として残っています。

参考文献

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

さらに探索

データベース全体から

今週のトップ拡張子

1.AQQAQQ Instant Messenger File
2.BINCD/DVD Disc Image (BIN/CUE)
3.PARTPartial Download File
4.MDMarkdown Document
5.RPMSGRestricted Permission Message
6.CRDOWNLOADChrome Partial Download File
7.NOMEDIAAndroid No-Media Marker File
8.PRDXSoftMaker Presentations Document
9.PRO6XProPresenter 6 Bundle File
10.SWFSmall Web Format (Shockwave Flash)

関連する拡張子

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

無料ファイルツール

ブラウザで動作するファイル識別および画像変換ツール。すべてお使いのデバイス上で実行されます。

ツールボックスを開く

ファイル拡張子を A-Z で閲覧