LEX(1) UNIX Programmer's Manual LEX(1) NAME lex - generator of lexical analysis programs SYNOPSIS lex [ -tvfn ] [ file ] ... DESCRIPTION _L_e_x generates programs to be used in simple lexical analyis of text. The input _f_i_l_e_s (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, to be compiled thus: cc lex.yy.c -ll 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. -f "Faster" compilation: don't bother to pack the result- ing tables; limited to small programs. EXAMPLE lex lexcommands would draw _l_e_x instructions from the file _l_e_x_c_o_m_m_a_n_d_s, and place the output in _l_e_x._y_y._c %% [A-Z] putchar(yytext[0]+'a'-'A'); [ ]+$ ; [ ]+ putchar(' '); is an example of a _l_e_x program that would be put into a _l_e_x command file. This program converts upper case to lower, removes blanks at the end of lines, and replaces multiple blanks by single blanks. Printed 11/26/99 April 14, 1986 1 LEX(1) UNIX Programmer's Manual LEX(1) SEE ALSO yacc(1), sed(1) M. E. Lesk and E. Schmidt, _L_E_X - _L_e_x_i_c_a_l _A_n_a_l_y_z_e_r _G_e_n_e_r_a_t_o_r Printed 11/26/99 April 14, 1986 2