RE: [java-list] Executar Expressões em String
Alessandro. Dê uma estudada em compiladores. Um bom livro é o do Aho (aquele do dragão). Basicamente você precisa de uma ferramenta de para parsear e interpretar um texto a partir de uma gramática. Para linguagem C, em linux, há o yacc e mais outra que esqueci o nome. Não conheço nenhuma ferramenta para java. Basicamente esta irá ler a descrição dos tokens e da gramática que você definir e criar um interpretador apropriado. abraços Jorge -Original Message- From: Alessandro [mailto:[EMAIL PROTECTED]] Sent: terça-feira, 25 de setembro de 2001 18:49 To: JAVA LIST Subject: [java-list] Executar Expressões em String Olá à todos, Estou desenvolvendo um trabalho acadêmico e estou tendo algumas dificuldades. O usuário digita uma expressão em formato string e eu gostaria de executar uma operação com esta string: Exemplo: Usuário digita: p||q . Eu atribuirei valores true or false para p e q . Gostaria de estar executando esta expressão e armazená-la num atributo que será a resposta da expressão. Alguém já fez algo parecido? Poderia me dar alguma dica? Valeu, Alessandro __ Do You Yahoo!? Get email alerts NEW webcam video instant messaging with Yahoo! Messenger. http://im.yahoo.com -- LISTA SOUJAVA http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htm regras da lista: http://www.soujava.org.br/regras.htm para sair da lista: envie email para [EMAIL PROTECTED] - -- LISTA SOUJAVA http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htm regras da lista: http://www.soujava.org.br/regras.htm para sair da lista: envie email para [EMAIL PROTECTED] -
Re: [java-list] Executar Expressões em String
Allexandro, Existe uma otima linguagem chamada PNUTS desenvolvida pela sun do japao Ela interpreta codigo em java e pode ser chamada a partir de uma aplicacao java, Eu estoou usando e posso dizer que eh otima... vai resolver o seu problema e voce nao presisara reinventar a roda... - Original Message - From: Antonio Luiz Cavalcanti Boll [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Wednesday, September 26, 2001 9:04 AM Subject: Re: [java-list] Executar Expressões em String Caro allessandro, o que você está tentando fazer é um analizador de expressões, é a teoria base dos compiladores, procure por analizador de expressões no google que com certeza já deve ter algo pronto para você adequar a suas necessidades, a linguagem Java oferece um recurso facilitador para montar pequenas linguagens que é a StringTokenizer, não a conhecia até ver o e-mail de Silvio Fragata da Silva, testei e achei bem eficaz, espero que ajude... E-MAIL PASSADO PARA A LISTA POR SILVIO FRAGATA Mônica, o problema é o seguinte: o método charAt() da classe String retorna um char, então vc não pode fazer isto strRecebida.charAt(indice-1).equals( ) Mas existe uma classe que se encaixa perfeitamente para o que vc quer, é a classe StringTokenizer Ex.: import java.util.StringTokenizer public static void main(String[] args) { StringTokenizer str = new StringTokenizer(Java é legal); System.out.println(Número de palavras: + str.countTokens());// retorna a quantidade de tokens while ( str.hasMoreTokens() ) { System.out.println( str.nextToken() );// retorna cada token } } a saída será a seguinte Número de palavras: 3 Java é legal - Original Message - From: Alessandro [EMAIL PROTECTED] To: JAVA LIST [EMAIL PROTECTED] Sent: Tuesday, September 25, 2001 6:49 PM Subject: [java-list] Executar Expressões em String AcessoBOL, só R$ 9,90! O menor preço do mercado! Assine já! http://www.bol.com.br/acessobol/ Olá à todos, Estou desenvolvendo um trabalho acadêmico e estou tendo algumas dificuldades. O usuário digita uma expressão em formato string e eu gostaria de executar uma operação com esta string: Exemplo: Usuário digita: p||q . Eu atribuirei valores true or false para p e q . Gostaria de estar executando esta expressão e armazená-la num atributo que será a resposta da expressão. Alguém já fez algo parecido? Poderia me dar alguma dica? Valeu, Alessandro __ Do You Yahoo!? Get email alerts NEW webcam video instant messaging with Yahoo! Messenger. http://im.yahoo.com -- LISTA SOUJAVA http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htm regras da lista: http://www.soujava.org.br/regras.htm para sair da lista: envie email para [EMAIL PROTECTED] - -- LISTA SOUJAVA http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htm regras da lista: http://www.soujava.org.br/regras.htm para sair da lista: envie email para [EMAIL PROTECTED] - -- LISTA SOUJAVA http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htm regras da lista: http://www.soujava.org.br/regras.htm para sair da lista: envie email para [EMAIL PROTECTED] -
Re: [java-list] Executar Expressões em String
Jorge, complementando seu comentário, se me permite, existe um livro muito bom, também, chamado, A Moderne Compiler Implementation in Java é muito bom, cobre todos os tópicos sobre a base de compiladors e interpretadores e com a vantagem de todo exemplo de implementação está em JAVA. - Original Message - From: Jorge Martins [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Wednesday, September 26, 2001 10:42 AM Subject: RE: [java-list] Executar Expressões em String AcessoBOL, só R$ 9,90! O menor preço do mercado! Assine já! http://www.bol.com.br/acessobol/ Alessandro. Dê uma estudada em compiladores. Um bom livro é o do Aho (aquele do dragão). Basicamente você precisa de uma ferramenta de para parsear e interpretar um texto a partir de uma gramática. Para linguagem C, em linux, há o yacc e mais outra que esqueci o nome. Não conheço nenhuma ferramenta para java. Basicamente esta irá ler a descrição dos tokens e da gramática que você definir e criar um interpretador apropriado. abraços Jorge -Original Message- From: Alessandro [mailto:[EMAIL PROTECTED]] Sent: terça-feira, 25 de setembro de 2001 18:49 To: JAVA LIST Subject: [java-list] Executar Expressões em String Olá à todos, Estou desenvolvendo um trabalho acadêmico e estou tendo algumas dificuldades. O usuário digita uma expressão em formato string e eu gostaria de executar uma operação com esta string: Exemplo: Usuário digita: p||q . Eu atribuirei valores true or false para p e q . Gostaria de estar executando esta expressão e armazená-la num atributo que será a resposta da expressão. Alguém já fez algo parecido? Poderia me dar alguma dica? Valeu, Alessandro __ Do You Yahoo!? Get email alerts NEW webcam video instant messaging with Yahoo! Messenger. http://im.yahoo.com -- LISTA SOUJAVA http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htm regras da lista: http://www.soujava.org.br/regras.htm para sair da lista: envie email para [EMAIL PROTECTED] - -- LISTA SOUJAVA http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htm regras da lista: http://www.soujava.org.br/regras.htm para sair da lista: envie email para [EMAIL PROTECTED] - -- LISTA SOUJAVA http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htm regras da lista: http://www.soujava.org.br/regras.htm para sair da lista: envie email para [EMAIL PROTECTED] -