想要让这段代码表示以”;“结尾或者以”\n“结尾均可,应该如何改
时间: 2023-12-16 12:04:03 浏览: 53
要让这段代码表示以`;`结尾或者以`\n`结尾均可,可以将原来的规则:
```
USE ID ';' | '\n' {
printf("\n");
useDB($2);
printf("\nSQL>");
}
```
改为:
```
USE ID ( ';' | '\n' )? {
printf("\n");
useDB($2);
printf("\nSQL>");
}
```
这里的改动主要是针对`;`和`\n`两种结尾情况的处理方式。原来的规则中,只能以`;`结尾,而现在的规则中,用括号将`;`和`\n`括起来,表示二者中的任意一个都可以出现,而`?`则表示该结构可以出现零次或一次。这样一来,就可以支持两种不同的结尾方式了。
阅读全文