(平衡的)带括号的表达式的语言不规则,即,您不能编写匹配这些字符串的正则表达式.
参见SO问题:为什么正则表达式称为"常规"表达式和维基百科:常规语言.
您需要使用更强大的解析技术,例如CFG,例如ANTLR.
您可以从以下内容开始:
CastedExpression ::= Cast Expression | LPAR CastedExpression RPAR
Cast ::= LPAR Type RPAR
Expression ::= Sum | Product | Litteral | LPAR Expression RPAR | ...
Type ::= char | int | Type ASTERISK | ...
Run Code Online (Sandbox Code Playgroud)
(如果您发现任何明显的改进,请随意编辑上面的语法).
| 归档时间: |
|
| 查看次数: |
153 次 |
| 最近记录: |