Você está na página 1de 2

EXPRESSES REGULARES

Uma Expresso Regular ( ER ) um formalismo usado para definir o formato correto de uma cadeia de caracteres (palavras) da Linguagem sobre um alfabeto () ER = Expresso Regular L(ER) = Linguagem da Expresso Regular

Uma ER sobre um alfabeto indutivamente definida como

O conjunto vazio ( ) uma ER e denota a Linguagem vazia


o

L( ) = { } L( ) = { }

A palavra sem smbolo ( ) uma ER e denota a Linguagem contendo exclusivamente


o

Qualquer smbolo ( ) pertencente ao uma ER e denota a Linguagem contendo a palavra unitria


o

L( ) = { } representado apenas por

A ER formada a partir de operaes de concatenao e unio, juntamente com operadores especiais. Se = {a, b} ento: Concatenao o a . b = ab Unio o (a + b) = a ou b

Concatenao Sucessiva

A Concatenao Sucessiva define a quantidade de repetio da ER, so eles o ( * ) pode aparecer zero ou mais a ER ab* = a , ab , abb , abbb, ... a (a + b)* = a , aa , ab , aaa , aba , ... a (ba)* = a , aba , aba , ababa , ... o ( + ) tem que aparecer um ou mais a ER ab+ = ab , abb , abbb, ... a (a + b)* = aa , ab , aaa , aba , ... a (ba)* = a , aba , aba , ababa , ...
Teoria da Computao Prof. Glucya Carreiro Boechat 1

Precedncia de Operadores
A Concatenao Sucessiva tem precedncia sobre a concatenao e a unio A Concatenao tem precedncia sobre a unio

Na tabela abaixo, so apresentadas Expresses Regulares e as correspondentes Linguagens sobre o alfabeto = {a, b}:

Expresso Regular
aa ba* (a + b)* (a + b)*aa(a + b)* a*ba*ba* (a + b)*(aa + bb) (a + )(b + ba)* somente a palavra aa

Linguagem Representada

todas as palavras que iniciam por b, seguido por zero ou mais a todas as palavras sobre o alfabeto { a, b } todas as palavras contendo aa como subpalavra todas as palavras contendo exatamente dois b todas as palavras que terminam com aa ou bb todas as palavras que no possuem dois a consecutivos

Exerccios
1) Encontre a ER para as Linguagens: a) Consiste das palavras sobre o alfabeto = {a , b , c} que contm pelo menos um a e pelo menos um b b) Consiste das palavras sobre o alfabeto = {0 , 1} cujo o quinto smbolo um 0 c) Consiste das palavras sobre o alfabeto = {a , b} que comece com b e finalize com a d) Consiste das palavras sobre o alfabeto = {0 , 1} que comece com bb ou um a e) Consiste das palavras sobre o alfabeto = {a , b} que contm no mnimo dois a f) Consiste das palavras sobre o alfabeto = {a , b , c} que contm abc como subpalavra

2) Determine as Linguagens correspondentes a seguintes ERs: a) (aa + b) + (a + bb) b) (a + b)* aba c) (a + b) (a + b) b (a + b)* d) ba+ b e) b*
Teoria da Computao Prof. Glucya Carreiro Boechat 2

Você também pode gostar