Java para manipula Strings, Arrays, Collections e Lists

Sou doutorando em eng. mecânica pela UFSC. Estou iniciando no Java e pretendo usá-lo na criação de um vocabulário controlado e, posteriormente, no desenvolvimento de um tokeinizador, separador de uma sentenbça em seus componentes individuais. Alguém está mechendo com algo similar?

que a gramatica das suas frases?
se forem sempre separadas por espaço ou um conjunto simples de separadores, use StringTokenizer.
se voce precisa de um lexer mais poderoso, tem o StreamTokenizer, nunca usei, porem tem bem mais recursos que o StringTokenizer.

Sua ultima solução seria algo feito o javacc, um equivalente aos lex/yacc porem que gera código java.

se voce usar qualquer ferramenta que seja apenas gere um automato deterministico, como o javacc, nao vai conseguir pegar ambiguidades.

tipo, tem situacoes que uma frase pode ser analisada sintaticamente de 2 formas diferentes, e corretamente. Entao fica complicado.

Ja fiz um parser assim. Se voce precisar te mando.