LEX(1)LEX(1)

NAME
lex – generator of lexical analysis programs

SYNOPSIS
lex [ −tvn9 ] [ file ... ]

DESCRIPTION
Lex generates programs to be used in simple lexical analysis of text. The input files (standard input default) contain regular expressions to be searched for and actions written in C to be executed when expressions are found.
A C source program, lex.yy.c is generated. This program, when run, copies unrecognized portions of the input to the output, and executes the associated C action for each regular expression that is recognized.
The options have the following meanings.
−t    Place the result on the standard output instead of in file lex.yy.c.
−v    Print a one-line summary of statistics of the generated analyzer.
−n    Opposite of −v; −n is default.
−9    Adds code to be able to compile through the native C compilers.

EXAMPLES
This program converts upper case to lower, removes blanks at the end of lines, and replaces multiple blanks by single blanks.
%%
[A−Z] putchar(yytext[0]+'a'−'A');
[ ]+$
[ ]+    putchar(' ');

FILES
lex.yy.c           output
/sys/lib/lex/ncform   template

SEE ALSO
yacc(1), sed(1)
M. E. Lesk and E. Schmidt, ‘LEX--Lexical Analyzer Generator’, Unix Research System Programmer’s Manual, Tenth Edition, Volume 2.

SOURCE
/usr/local/plan9/src/cmd/lex

BUGS
Cannot handle UTF.
The asteroid to kill this dinosaur is still in orbit.

Space Glenda