Saber a posição da aspa e o fim da linha

2 respostas
P

Eu estou fazendo um trabalho de compilador e o sistema que estou desenvolvendo está analisando a seguinte linha:

println ( " qualquer texto " ) ;

estou fazendo a parte que acha os erros de estrutura.
Ate essa parte: println ( ", ele funciona.
Gostaria de saber como eu ignoro o texto entre as aspas e consigo saber a posição da proxima aspa, e tambem queria saber como eu sei qual é o ultimo caracter da linha do textarea para verificar se é ponto e virgula

2 Respostas

T

Você está fazendo um analisador léxico?

Desenhe uma máquina de estados.

Desenhe direitinho, porque se você a desenhar e implementar direitinho você não precisa se preocupar com essas coisas.

Normalmente, quando você acha uma aspa, vai para um outro estado do qual se sai apenas quando você encontra uma outra aspa, ou então um fim de linha (e nesse caso você dispara um erro de “string não terminada”), ou então o final do arquivo. Quando você encontrar a outra aspa, você pode então voltar ao estado em que você vai coletando os caracteres para montar identificadores, operadores ou outras pontuações.

P

Estou fazendo um analisador lexico sim, ele ja reconhece as palavras reservadas e simbolos, mas nao consegui fazer reconhecer variáveis.
E também falta arrumar essa questão do println

Criado 29 de abril de 2009
Ultima resposta 29 de abr. de 2009
Respostas 2
Participantes 2