ここで「ブラウザーのしくみ」の記事を読んでいました:ブラウザーのしくみ(これは素晴らしい読み物です。)
しかし、ある時点で、彼らはこれを整数を定義する文法の規則として言及しています。
INTEGER :0|[1-9][0-9]*
書くのはまったく同じ(そしてより簡単)ですか、それともそうではありません:
INTEGER :[1-9]*[0-9]
両方のルールを満たさないケースも、最初のルールが優先される理由も思いつきませんでした。
単純な基本ケース ( など0
) を含める理由はありますか?