Semua bahasa reguler memiliki tata bahasa LL (1). Untuk mendapatkan tata bahasa seperti itu, ambil DFA apa pun untuk bahasa reguler (mungkin dengan melakukan konstruksi subset pada NFA yang diperoleh dari ekspresi reguler), kemudian mengubahnya menjadi tata bahasa reguler rekursif-kanan. Tata bahasa ini kemudian LL (1), karena setiap pasangan produksi untuk nonterminal yang sama dapat dimulai dengan simbol yang berbeda, atau satu menghasilkan ε dan memiliki $ sebagai toahead token. Akibatnya, semua bahasa reguler juga LR (1), karena tata bahasa LL (1) apa pun adalah LR (1). Selain itu, dengan menggunakan hasil penting dari makalah ini , Anda dapat menunjukkan bahwa bahasa LR (1) apa pun memiliki tata bahasa SLR (1), artinya setiap bahasa biasa memiliki tata bahasa SLR (1).
Namun, bahasa reguler tidak semuanya LR (0). Bahasa LR (0) memiliki sifat yang sangat spesifik - khususnya, mereka harus bebas awalan. Jadi bahasa reguler {a, aa} bukan LR (0), meskipun jelas reguler (regex a | (aa)). Namun, bahasa LR (0) tidak terkandung dengan benar dalam bahasa reguler; tata bahasa ini untuk {0 n 21 n | n ≥ 1} adalah LR (0), tetapi bahasanya tidak teratur:
S -> E
E -> 0E1 | 2
Semoga ini membantu!