📄 netlist.l.bak
字号:
%{
#include "circuit.h"
#include "y.tab.h"
extern YYSTYPE yyval, yylval;
#define read_to_eol() do {char c;while ((c = input()) && !strchr("\r\n\f",c) ); }while(0)
%}
%option lex-compat
%x id1 id2 value unit post_unit
%%
\[ {BEGIN(id1);return COMPONENT_START;}
<post_unit>\] {BEGIN(0);return COMPONENT_END;}
<*>[\n\r\f] ;
<*>[ \t]* ;
<id1>[^\[\]\(\)\n][^\n\r]* {
BEGIN(id2);
strcpy (yylval.svalue.s,yytext);
printf ("0-%s\n",yytext);
return IDENTIFIER;
}
<id2>[^\[\]\(\)\n][^\n\r]* {
BEGIN(value);
strcpy (yylval.svalue.s,yytext);
printf ("1-%s\n",yytext);
return IDENTIFIER;
}
<value>[^\[\]\(\)\n][^\n\r]* {
BEGIN(post_unit);
strcpy (yylval.svalue.s,yytext);
printf ("2-%s\n",yytext);
return IDENTIFIER;
}
<value>[0-9]*.[0-9]*[ ]*{pF|uF|F|H|mH|K} {
BEGIN(post_unit);
strcpy (yylval.svalue.s,yytext);
printf ("3-%s\n",yytext);
return IDENTIFIER;
}
\( {return NODE_START;}
\) {return NODE_END;}
%%
int yywrap () {return 1;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -