This product includes software developed by the University of California, Berkeley and its contributors.
Copyright (c) 1990 The Regents of the University of California. All rights reserved.
This code is derived from software contributed to Berkeley by Vern Paxson.
The United States Government has rights in this work pursuant to contract no. DE-AC03-76SF00098 between the United States Department of Energy and the University of California.
Redistribution and use in source and binary forms are permitted provided that: (1) source distributions retain this entire copyright notice and comment, and (2) distributions including binaries display the following acknowledgement: "This product includes software developed by the University of California, Berkeley and its contributors" in the documentation or other materials provided with the distribution and in all advertising materials mentioning features or use of this software. Neither the name of the University nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
flex
, with Examples
flex
is a tool for generating scanners: programs which recognize
lexical patterns in text. flex
reads the given input files (or
its standard input if no file names are given) for a description of the
scanner to generate. The description is in the form of pairs of regular
expressions and C code, called rules. flex
generates as
output a C source file, `lex.yy.c', which defines a routine
yylex
. Compile and link this file with the `-lfl' library to
produce an executable. When the executable runs, it analyzes its input
for occurrences of the regular expressions. Whenever it finds one, it
executes the corresponding C code.
Some simple examples follow, to give you the flavor of using
flex
.