flex man page

flex — the fast lexical analyser generator


flex [OPTIONS] [FILE]...


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
do not compress tables; use -f representation
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
default compression (same as --ecs --meta-ecs)


-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
use hexadecimal numbers instead of octal in debug outputs


-o, --outfile=FILE
specify output filename
-S, --skel=FILE
specify skeleton file
-t, --stdout
write scanner on stdout instead of lex.yy.c
name of C++ class
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)
track line count in yylineno

Generated code

-+, --c++
generate C++ scanner class
#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
scanner for bison pure parser.
include yylloc support.
initialize yyin/yyout to stdin/stdout

--noansi-definitions old-style function definitions

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


do-nothing POSIX option
do-nothing POSIX option


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

Referenced By

bison(1), bpfc(8), flex-2.5.4a(1), nawk(1), ocamllex(1), ragel(1), re2c(1), suffixes(7), treecc(1).

September 2016 flex 2.6.1 User Commands