[英]how to represent Java-style OR in BNF?
美好的一天。 我想知道,如果我想做一個表示Java中if-else子句的Backus-Naur表單,我該如何在多個條件下使用OR和AND? 我知道AND可以簡單地用&&表示,或用||表示。 但是由於垂直線已經是BNF語法的一部分,所以我想知道是否仍然允許這樣做。
來自: https : //users-cs.au.dk/amoeller/RegAut/JavaBNF.html
<conditional or expression> ::= <conditional and expression> | <conditional or expression> || <conditional and expression>
<conditional and expression> ::= <inclusive or expression> | <conditional and expression> && <inclusive or expression>
邏輯還是很明確,因為您有兩個||
,但是您始終可以用粗體,其他字體或引號來表示文字。
此處的另一個示例: https : //users-cs.au.dk/amoeller/RegAut/JavaBNF.html對文字使用粗體和固定寬度的字體。
Wiki顯示引號,如果您沒有可用的多種字體,這是最安全的:
<expression> ::= <list> | <list> <opt-whitespace> "|" <opt-whitespace> <expression>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.