letter [a-zA-Z]
digit [0-9]
opFrac "."{digit}+
opExponent [Ee][+-]?{digit}+
num {digit}+{opFrac}?{opExponent}?
id {letter}({letter}|{digit})*
%%
int
|float|char
{printf
("keyword \n"
);}{id} {printf("ID\n");}
{digit
}+ {printf
("
number \n"
);} [" "|\t|\n] ;
\+ {printf("plus \n");}
. {printf("other \n");}
bGV0dGVyCQkJW2EtekEtWl0KZGlnaXQJCQlbMC05XQpvcEZyYWMJCQkiLiJ7ZGlnaXR9KwpvcEV4cG9uZW50CQlbRWVdWystXT97ZGlnaXR9KwpudW0JCQl7ZGlnaXR9K3tvcEZyYWN9P3tvcEV4cG9uZW50fT8KaWQgCQkJe2xldHRlcn0oe2xldHRlcn18e2RpZ2l0fSkqCgolJQppbnR8ZmxvYXR8Y2hhcgkJe3ByaW50Zigia2V5d29yZCBcbiIpO30Ke2lkfQkJCXtwcmludGYoIklEXG4iKTt9CntkaWdpdH0rCQl7cHJpbnRmKCJudW1iZXIgXG4iKTt9ClsiICJ8XHR8XG5dCQk7ClwrCQkJe3ByaW50ZigicGx1cyBcbiIpO30KLgkJCXtwcmludGYoIm90aGVyIFxuIik7fQ==