flex笔记

#Parser

框架

%{
// defs
%}

%%

[regexp] { /* code */ }
...

%%

// c driver code

OPTIONS

%option nodefault noyywrap yylineno

INPUT

STATE

YY_BUFFER_STATE bs
  bs->f
  bs->filename
  yy_switch_to_buffer()
yylineno

define a state:

%x [STATE_NAME]

start a state during lexing:

{ BEGIN [STATE_NAME]; }

\regexp

\<\> as a special state