Sunteți pe pagina 1din 9

Instituto Tecnologico Superior de Misantla

Lenguajes y Autmatas II. Ing. Guadalupe Guendulay Escalante. Analizador Lexico. Equipo: Juan Vicente osa !alderas. Juli"n #orantes $uertes. Luis Antonio La%&n Guti'rrez.

(isantla Ver.) a #iciem*re +, del -+./

#escargar el arc0i%o.jar de J$lex

1rear un nue%o proyecto en el id 2et!eans

Agregar la li*rer&a al proyecto

1odigo para leer los to3ens pac3age Analizalexico4

566 6 6 7aut0or juan%icente 65 pu*lic enum 8o3en 9 uma):esta)(ultiplicacion) #i%ision) ;otenciacion) E::<:) 2umero) Entero) :eal) ;ala*ra=:eser%ada) #ato=Entero)(etodo=General) #ato=Entero=Largo) #ato=#ecimal=Largo)#ato=#ecimal=1orto)#ato=!ooleano)1adena) Identi>icador)

<perador=Logico) <perador=:elacional) #ecimal) (odulo) #ecimal=1orto) #ecimal=Largo) Inicio=de=la=clase) Inicio=1omentario) $inal=1omentario4 ?

1odigo de la clase principal para crear el directorio del arc0i%o de texto donde se guardara la cadena para de a0& leerlo. pac3age analizalexico4

566 6 6 7aut0or Juan Vicente 65 import ja%a.io.$ile4

pu*lic class Analizalexico 9

566 6 7param args t0e command line arguments 65 pu*lic static %oid main@ tringAB argsC 9 tring pat0D E1:5Fsers5Juan Vicente5#ocuments52et!eans;rojects5Analizalexico5src5analizalexico5lexer.>lexE4 generarLexer@pat0C4 ?

pri%ate static %oid generarLexer@ tring pat0C 9 $ile >ile D neG $ile @pat0C4 J$lex.(ain.generate@>ileC4 ?

1odigo que %a a reconocer las los elementos insertados @.>lexC

pac3age analizalexico4

import static Analizalexico.8o3en.64 HH Hclass lexer Htype 8o3en #DA+IJB ##DA+IJBK L D AAILBAaIzM=B6 EspDAN NtNrNnB H9 pu*lic tring lexeme4 H? HH

9Esp? 956Ignore65? EHE 9return (odulo4? EKE 9return uma4? EIE 9return :esta4? E6E 9return (ultiplicacion4? E5E 9return #i%ision4? EOE 9return ;otenciacion4? 9##? 9lexemeDyytext@C4 return Entero4? 9#?KE.E9#?9#?9#?9#? 9lexemeDyytext@C4 return #ecimal=1orto4? 9#?KE.E9#?9#?9#?9#?K 9lexemeDyytext@C4 return #ecimal=Largo4? EinicioE 9return Inicio=de=la=clase4? @E%erdadEPE>alsoEPEmetodoEPEsiEPEmientrasEPEparaEPEcontraEC 9lexemeDyytext@C4 return ;ala*ra=:eser%ada4? @EQEPEQQEPEPEC 9lexemeDyytext@C4 return <perador=Logico4? @EDDEPEREPESEPERDEPESDEPETDEC 9lexemeDyytext@C4 return <perador=:elacional4? EHenteE 9return #ato=Entero4? EHlargoE 9return #ato=Entero=Largo4? EHdecilE 9return #ato=#ecimal=Largo4? EHdecicE 9return #ato=#ecimal=1orto4? EH*oolE 9return #ato=!ooleano4? EHcadenaE 9return 1adena4? Emetodo generalABE 9return (etodo=General4? EU6E 9return Inicio=1omentario4? ET6E 9return $inal=1omentario4? 9L? 9lexemeDyytext@C4 return Identi>icador4? @E@IE9#?KECECP9#?K 9lexemeDyytext@C4 return 2umero4? . 9return E::<:4?

Al correr el m'todo principal @mainC se nos generara una clase mas esta ser" la que %incule a la clase.>lex y la .ja%a en donde editaremos para castear todos los to3nes posi*les

A0ora corremos el programa:

S-ar putea să vă placă și