ediflex.l
来自「主要用于大规模的测试生成方法」· L 代码 · 共 37 行
L
37 行
%{#include <stdio.h>#undef YYLMAX#include "defines.h"extern int err_count;extern FILE *edifp;#undef input#define input() (((yytchar=yysptr>yysbuf?U(*--yysptr):toupper(getc(edifp)))==10?(yylineno++,yytchar):yytchar)==EOF?0:yytchar)%}white [ \t\n\r]black [-!#$&()*+,./:;<=>?@_`{|}~^\[\]\\\"\']ident [&A-Za-z][A-Za-z0-9_]*number [+-]?[0-9]+string \"[-A-Za-z0-9%!#$&\'()*+,./:;<=>?@\[\]\\^_`{|}~ \t\n\r]*\"%START KEY STR%e 256%%{white}+ ;<KEY>{ident} { BEGIN 0; return( KEYWORD);}<KEY>({black}|[0-9]) { fprintf( stderr, "Line %d: '%c' illegal after '('!\n", yylineno, yytext[0]); BEGIN 0; err_count++; }"(" BEGIN KEY;{ident} return( IDENT);{number} return( NUMBER);{string} return( STRING);")" return( ENDLIST);{black} { fprintf( stderr,"Line %d: Illegal character '%c'!\n", yylineno, yytext[0]); err_count++; }. { fprintf( stderr, "Line %d: Illegal character octal %o!\n", yylineno, yytext[0]); err_count++; }%%static int yywrap() { return(1);}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?