Итак, я получил эти токены в своем файле lex:
\$\$.* ; /* comment */
\$(.|\n)*\$ ; /* comment */
">=" return GE;
"<=" return LE;
":=" return AT;
"~=" return NEQ;
"if" return IF;
"else" return ELSE;
"then" return THEN;
"elif" return ELIF;
"fi" return FI;
"for" return FOR;
"until" return UNTIL;
"step" return STEP;
"do" return DO;
"done" return DONE;
"repeat" return REP;
"stop" return STOP;
"return" return RET;
"program" return PROG;
"module" return MOD;
"start" return ST;
"end" return END;
"void" return VD;
"const" return CT;
"number" return NB;
"array" return ARR;
"string" return SG;
"function" return FC;
"public" return PB;
"forward" return FW;
И я хотел знать, есть ли способ сделать совпадение токена, только если он начинается в начале строки. Например, если в моей программе я пишу это так:
start
Это должно работать, но если я делаю:
start
или
program start
, это должно не работает