Estás en: Inicio >> Foros >> Informática >> Programación
Programación /

Análisis Léxico con JAVA

Participa en el tema Análisis Léxico con JAVA en el foro Programación.
Hola a todos los de psicofxp : Bueno al grano, como ya vieron el tema ...

Buscar en este tema:
 
  •  
    #1 Análisis Léxico con JAVA
    Hola a todos los de psicofxp:
    Bueno al grano, como ya vieron el tema se trata de que si me pueden ayudar con un análizador léxico que estoy haciendo, de hecho ya lo tengo bien avanzado solo que no entiendo como hacer que el programa diferencie si es una palabra, un número entero o real,constantes y delimitadores, pues esa parte esta medio bien, jejeje solo que no se como combinarlas bien para determianar un erroro sintactico, por el momento solo lee las palabras reservadas y las cuenta.

    Esto solo es una parte del programa.
    -------------------------------------------------------------------------------------------
    public static boolean Delimitador(String lexema)throws IOException{
    switch(lexema.charAt(0)){
    case ' ':
    case '\t':;
    case '\n':
    case '\r':
    return true;
    default:
    for(int i=tPalRes;i<tDel;i++)
    if(lexema.compareTo(matToken[i])==0)
    return true;
    }
    return false;
    }
    public static boolean Numero(String lexema)throws IOException{
    for(int i=0;i<lexema.length();i++)
    if(!Character.isDigit(lexema.charAt(i))||lexema.ch arAt(i)!='.')
    return false;
    return true;
    }
    public static boolean Variable(String lexema)throws IOException{
    if(lexema.startsWith("_")||Character.isLetter(lexe ma.charAt(0)))
    return true;
    return false;
    }
    public static boolean PalRes(String lexema)throws IOException{
    for(int i=0;i<tPalRes;i++){
    if(lexema.compareTo(matToken[i])==0)return true;
    else if(i==matToken.length-1)return false;
    }
    return false;
    }
    public static void Analizador(String lexema)throws IOException{
    String token="";
    for(int i=0;i<lexema.length();i++){
    token+=""+lexema.charAt(i);
    if(PalRes(token)&&Delimitador(""+lexema.charAt(i+1 ))){
    System.out.println("ya");
    token="";
    good++;
    i++;
    }else{
    System.out.println("aun no");
    bad++;
    }
    }
    System.out.println("Correctos: "+good);
    }
    -------------------------------------------------------------------------------------------
    Espero alguien me pueda ayudar en el metodo de Analizador que se encuentra en el archivo que adjunto junto a una lista de las palabras reservadas (que ya la lee y guarda en una matriz) y un archivo de ejemplo (que tambien lo lee y lo guarda en un String)
    Archivos adjuntos
    Tipo de archivo: zip Analizador_Lexico.zip (1.6 KB, 67 vistas)
    +
     
    0
    Me gusta
     
    | Más
  • #2 Re: Análisis Léxico con JAVA

    basicamente deberias hacerlo utilizando esto o algo similar. Y no la cochinada que hiciste.
    http://java.sun.com/j2se/1.4.2/docs/...x/Pattern.html
    Me gusta este mensaje
  • #3 Re: Análisis Léxico con JAVA

    Originalmente publicado por megajandro Ver mensaje
    basicamente deberias hacerlo utilizando esto o algo similar. Y no la cochinada que hiciste.
    http://java.sun.com/j2se/1.4.2/docs/...x/Pattern.html
    Gracias por tu opinion, no lo cheque muy buen el lnk pero fue por que ya lo termine lo que necesitaba y pues solo es un simulador de compilador de la parte del analisis lexico.
    Me gusta este mensaje
  • #4 Re: Análisis Léxico con JAVA

    si es para la materia sintaxis, esta mal lo que estas haciendo. No estas aplicando bien el concepto de AFD.
    Me gusta este mensaje
Estás en: Inicio >> Foros >> Informática >> Programación


Estadísticas del tema
  • 3 RESPUESTAS
  • 1877 VISTAS
  • 2 USUARIOS RESPONDIERON
 
Ir arriba
Contacto | Acerca de | Ayuda | Términos Legales | privacidad | Pautas de convivencia | Mapa de los foros | TrabajÁ con nosotros
©2008 Psicofxp.com S.A. - Todos los derechos reservados
Certifica IAB