Syntax 如何将bnf转化为ebnf!?bnf<;Z>;:=DCd | D<;N>;C

Syntax 如何将bnf转化为ebnf!?bnf<;Z>;:=DCd | D<;N>;C,syntax,grammar,bnf,ebnf,computer-science-theory,Syntax,Grammar,Bnf,Ebnf,Computer Science Theory,如何将bnf转化为ebnf BNF :=DCd | DC EBNF :=D[}C[D] 或 :=D[C[D]] (我认为语法有什么错?这没什么。不可能简化。EBNF是扩展的BNF,通常包括BNF作为子集。也就是说,如果你有用BNF编写的东西,它通常也可以称为EBNF。所以你不需要做任何事情来“转换”从BNF到EBNF。相反,你的问题似乎更多的是关于产品的分解。 <Z> ::= DCd | D<N>C EBNF <Z> ::= D[<N>}

如何将bnf转化为ebnf

BNF

:=DCd | DC
EBNF
:=D[}C[D]
或
:=D[C[D]]

(我认为语法有什么错?

这没什么。不可能简化。EBNF是扩展的BNF,通常包括BNF作为子集。也就是说,如果你有用BNF编写的东西,它通常也可以称为EBNF。所以你不需要做任何事情来“转换”从BNF到EBNF。相反,你的问题似乎更多的是关于产品的分解。
 <Z> ::= DCd | D<N>C 

EBNF

<Z> ::= D[<N>}C[d]

or
 
<Z> ::= D[<N>C[d]]