1. 程式人生 > >flex匹配c語言註釋

flex匹配c語言註釋

課程上提到的匹配不包含ab的a、b、c組成的字串的正則表示式是b*(cb*+a+c)*,用flex測試了一下,對c語言的註釋確實有效。

%{
int num_lines = 0, num_chars = 0;
%}
A [/]
B [*]
C [^*/]
%%
"/*"{A}*({C}{A}*|{B}|{C})*"*/" {num_chars ++;}
\n {++num_lines;}
%%

int main ()
{
	yylex();
	printf("# of lines %d, # of chars = %d \n", num_lines,num_chars);
}


int yywrap()
{
	return 1;
}