📄 simpas.l
字号:
%{#include <stdio.h>int linenum;%}A [aA]B [bB]C [cC]D [dD]E [eE]F [fF]G [gG]H [hH]I [iI]J [jJ]K [kK]L [lL]M [mM]N [nN]O [oO]P [pP]Q [qQ]R [rR]S [sS]T [tT]U [uU]V [vV]W [wW]X [xX]Y [yY]Z [zZ]delim [ \t\v\f\r] ws {delim}+letter [a-zA-z]digit [0-9]id {letter}({letter}|{digit})*num {digit}+(\.{digit}+)?(E[+|-]?{digit}+)?relop =|<>|<|<=|>|>=addop \+|\-|ormulop \*|\/|div|mod|andassignop :=stringliteral \'[^\n']+\'comment (\{[^\}]*\})semicolon ;comma ,parentheses [()]bracket [\[|\]]colon :dot \.%%{A}{N}{D} {printf("KEY ,%s\n",yytext);}{A}{R}{R}{A}{Y} {printf("KEY ,%s\n",yytext);}{B}{E}{G}{I}{N} {printf("KEY ,%s\n",yytext);}{B}{O}{O}{L}{E}{A}{N} {printf("KEY ,%s\n",yytext);}{C}{O}{N}{S}{T} {printf("KEY ,%s\n",yytext);}{D}{I}{V} {printf("KEY ,%s\n",yytext);}{D}{O} {printf("KEY ,%s\n",yytext);}{D}{O}{W}{N}{T}{O} {printf("KEY ,%s\n",yytext);}{E}{L}{S}{E} {printf("KEY ,%s\n",yytext);}{E}{N}{D} {printf("KEY ,%s\n",yytext);}{F}{A}{L}{S}{E} {printf("KEY ,%s\n",yytext);}{F}{O}{R} {printf("KEY ,%s\n",yytext);}{F}{U}{N}{C}{T}{I}{O}{N} {printf("KEY ,%s\n",yytext);}{I}{F} {printf("KEY ,%s\n",yytext);}{I}{N}{T}{E}{G}{E}{R} {printf("KEY ,%s\n",yytext);}{M}{O}{D} {printf("KEY ,%s\n",yytext);}{N}{O}{T} {printf("KEY ,%s\n",yytext);}{O}{F} {printf("KEY ,%s\n",yytext);}{O}{R} {printf("KEY ,%s\n",yytext);}{R}{E}{A}{L} {printf("KEY ,%s\n",yytext);}{R}{E}{P}{E}{A}{T} {printf("KEY ,%s\n",yytext);}{P}{R}{O}{C}{E}{D}{U}{R}{E} {printf("KEY ,%s\n",yytext);}{P}{R}{O}{G}{R}{A}{M} {printf("KEY ,%s\n",yytext);}{T}{H}{E}{N} {printf("KEY ,%s\n",yytext);}{T}{O} {printf("KEY ,%s\n",yytext);}{T}{R}{U}{E} {printf("KEY ,%s\n",yytext);}{T}{Y}{P}{E} {printf("KEY ,%s\n",yytext);}{V}{A}{R} {printf("KEY ,%s\n",yytext);}{W}{H}{I}{L}{E} {printf("KEY ,%s\n",yytext);}{R}{E}{A}{D} {printf("KEY ,%s\n",yytext);}{U}{N}{T}{I}{L} {printf("KEY ,%s\n",yytext);}{W}{R}{I}{T}{E} {printf("KEY ,%s\n",yytext);}{W}{R}{I}{T}{E}{L}{N} {printf("KEY ,%s\n",yytext);}{id} {printf("ID ,%s\n",yytext);}{num} {printf("NUMBER ,%s\n",yytext);}{relop} {printf("REL_OP ,%s\n",yytext);} {addop} {printf("ADD_OP ,%s\n",yytext);} {mulop} {printf("MUL_OP ,%s\n",yytext);}{assignop} {printf("ASSIGN_OP ,%s\n",yytext);}{stringliteral} {printf("STR_LITERAL ,%s\n",yytext);}{comment} {printf("COMMENT ,%s\n",yytext);}{semicolon} {printf("SEMICOLON ,%s\n",yytext);}{comma} {printf("COMMA ,%s\n",yytext);}{parentheses} {printf("PARENTHESES ,%s\n",yytext);}{bracket} {printf("BRACKET ,%s\n",yytext);}{colon} {printf("COLON ,%s\n",yytext);}{dot} {printf("DOT ,%s\n",yytext);}[\n] {printf("Line Count: %d\n",++linenum) ;}{ws} {}. {printf("Unknown ,%c\n",yytext[0]);}%%int main(){ linenum=1; yylex(); return 0;}int yywrap(){return 1;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -