文法はWikiを見てね↓
https://ja.wikipedia.org/wiki/EBNF

↓は四則演算の実装

program = expr ;
expr = term , [ add sub op , term ] ;
term = factor , [ mul div op , factor ] ;
factor = number | "(" expr ")" ;
number = [ "-" ] , digit , [ { digit } ] ;
digit = "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" ;
add sub op = "+" | "-" ;
mul div op = "*" | "/" ;