Saludos
Estoy repasando algunos conceptos de Automatas, tengo que escribir la expresion regular que le corresponderia a un tipo entero, de cualquier lenguaje, en este caso C.
La duda que tengo es sobre si una gramatica tipo BNF es lo mismo que una expresion regular??, ambas son muy parecidas pero no se si sean lo mismo
BNF
<entero>:=<signo><decimal>|<decimal>
<decimal>:= <decimal><digito>|<digito>
<digito>:=0|1|2|3|4|5|6|7|8|9
<signo>:=+|-
expresion regular
entero:=[+/-][0...9]+|[0...9]+
gracias
Cita de: m@o_614 en 22 Agosto 2014, 03:09 AM
Saludos
Estoy repasando algunos conceptos de Automatas, tengo que escribir la expresion regular que le corresponderia a un tipo entero, de cualquier lenguaje, en este caso C.
La duda que tengo es sobre si una gramatica tipo BNF es lo mismo que una expresion regular??, ambas son muy parecidas pero no se si sean lo mismo
BNF
<entero>:=<signo><decimal>|<decimal>
<decimal>:= <decimal><digito>|<digito>
<digito>:=0|1|2|3|4|5|6|7|8|9
<signo>:=+|-
expresion regular
entero:=[+/-][0...9]+|[0...9]+
gracias
realmente no se que es BNF solo entrada por una correcion
entero sería
[+\-]?[0-9]+
o
[+\-]?[\d]+
el "-" te da un rango entre las 2 partes
el regex hasta ahora para mi no ha sido ciencia, sino arte XD