Scroll to navigation

FLEX(1) User Commands FLEX(1)

NAME

flex - the fast lexical analyser generator

SYNOPSIS

flex [OPTIONS] [FILE]...

DESCRIPTION

Generates programs that perform pattern-matching on text.

Table Compression:

-Ca, --align
trade off larger tables for better memory alignment
-Ce, --ecs
construct equivalence classes
-Cf
do not compress tables; use -f representation
-CF
do not compress tables; use -F representation
-Cm, --meta-ecs
construct meta-equivalence classes
-Cr, --read
use read() instead of stdio for scanner input
-f, --full
generate fast, large scanner. Same as -Cfr
-F, --fast
use alternate table representation. Same as -CFr
-Cem
default compression (same as --ecs --meta-ecs)

Debugging:

-d, --debug
enable debug mode in scanner
-b, --backup
write backing-up information to lex.backup
-p, --perf-report
write performance report to stderr
-s, --nodefault
suppress default rule to ECHO unmatched text
-T, --trace
flex should run in trace mode
-w, --nowarn
do not generate warnings
-v, --verbose
write summary of scanner statistics to stdout
--hex
use hexadecimal numbers instead of octal in debug outputs

FILES

-o, --outfile=FILE
specify output filename
-S, --skel=FILE
specify skeleton file
-t, --stdout
write scanner on stdout instead of lex.yy.c
--yyclass=NAME
name of C++ class
--header-file=FILE
create a C header file in addition to the scanner

--tables-file[=FILE] write tables to FILE

Scanner behavior:

-7, --7bit
generate 7-bit scanner
-8, --8bit
generate 8-bit scanner
-B, --batch
generate batch scanner (opposite of -I)
-i, --case-insensitive
ignore case in patterns
-l, --lex-compat
maximal compatibility with original lex
-X, --posix-compat
maximal compatibility with POSIX lex
-I, --interactive
generate interactive scanner (opposite of -B)
--yylineno
track line count in yylineno

Generated code:

-+, --c++
generate C++ scanner class
-Dmacro[=defn]
#define macro defn (default defn is '1')
-L, --noline
suppress #line directives in scanner
-P, --prefix=STRING
use STRING as prefix instead of "yy"
-R, --reentrant
generate a reentrant C scanner
--bison-bridge
scanner for bison pure parser.
--bison-locations
include yylloc support.
--stdinit
initialize yyin/yyout to stdin/stdout

--noansi-definitions old-style function definitions

--noansi-prototypes
empty parameter list in prototypes
--nounistd
do not include <unistd.h>
--noFUNCTION
do not generate a particular FUNCTION

Miscellaneous:

-c
do-nothing POSIX option
-n
do-nothing POSIX option

-?

-h, --help
produce this help message
-V, --version
report flex version

SEE ALSO

The full documentation for flex is maintained as a Texinfo manual. If the info and flex programs are properly installed at your site, the command
info flex

should give you access to the complete manual.

January 2017 flex 2.6.1