参考How to tokenize String in Lex and Yacc但在这篇文章中我正在寻找整数标记
当我得到输入时
a_2 = _6 + b_3;
在 lex 文件中我想将 a_2 作为整数类型令牌,我怎样才能得到这个令牌下面是我的 lex 文件
%{
/*
parser for ssa;
*/
#include<stdio.h>
#include<stdlib.h>
#include"y.tab.h"
%}
%%
[\t]+ ;
\n ;
"if" printf("first input\n");
"else" return(op);
"=" return(equal);
"+" return(op);
"*" return(op);
"-" return(op);
[\<][b][b][ ]+[1-9][\>] {return(bblock);}
([[_][a-z]])|([a-z][_][0-9]+)|([0-9]+) { yylval=atoi(yytext); return(var);}
. ;
%%
这是在数字中给出一些二进制值