我有一个正则表达式,用于多个规则。我可以为它定义别名,将此正则表达式定义保留在一个位置并在代码中使用它吗? 例如:
[A-Za-z0-9].[A-Za-z0-9_-]* (expression) NAME (alias)
...
%%
NAME[=]NAME {
//Do something.
}
%%
答案 0 :(得分:0)
它位于你的lex输入文件的definitions部分(%%
之前),你可以通过将名称放在花括号({…}
)中来在正则表达式中使用它。例如:
name [A-Za-z0-9][A-Za-z0-9_-]*
%%
{name}[=]{name} { /* Do something */ }