Может ли кто-нибудь предоставить ссылку на синтаксис для них ниже? - PullRequest
0 голосов
/ 17 декабря 2010
%x ST_IN_SCRIPTING
%x ST_DOUBLE_QUOTES
%x ST_BACKQUOTE
%x ST_HEREDOC
%x ST_START_HEREDOC
%x ST_END_HEREDOC
%x ST_LOOKING_FOR_PROPERTY
%x ST_LOOKING_FOR_VARNAME
%x ST_VAR_OFFSET
%x ST_COMMENT
%x ST_DOC_COMMENT
%x ST_ONE_LINE_COMMENT
%option stack

LNUM    [0-9]+
DNUM    ([0-9]*[\.][0-9]+)|([0-9]+[\.][0-9]*)
EXPONENT_DNUM   (({LNUM}|{DNUM})[eE][+-]?{LNUM})
HNUM    "0x"[0-9a-fA-F]+
LABEL   [a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*
WHITESPACE [ \n\r\t]+
TABS_AND_SPACES [ \t]*
TOKENS [;:,.\[\]()|^&+-/*=%!~$<>?@]
ANY_CHAR (.|[\n])
NEWLINE ("\r"|"\n"|"\r\n")

%option noyylineno
%option noyywrap

До сих пор я знаком с этими 3 разделами в lex, {%...%}, %%...%% и разделом после %%, но еще никогда не видел синтаксис для вышеупомянутого ...

1 Ответ

1 голос
/ 22 декабря 2010

Следующий оператор определяет начальное условие

%x ST_IN_SCRIPTING

В некоторых действиях правил вы найдете BEGIN(ST_IN_SCRIPTING), а некоторые шаблоны правил имеют префикс <ST_IN_SCRIPTING>.

.больше информации в руководстве по Flex

...