Como dice Xerelo, puedes usar contains y replace
ejemplo, reemplazar todas las coincidencias de mundo por world
Código JAVA:
Ver originalString t
= "Hola mundo en Java para todo el mundo"; if ( t.contains("mundo") )
{
System.
out.
println( t.
replaceAll("mundo",
"world") ); }
Ahora, creo que las expresiones regulares te pueden ayudar más al tratar de buscar y reemplazar tokens (ya que pueden estar escritas de distintas formas)
ejemplo, normalizar el token "select" a SELECT (mira que dice SeLECT en el string query)
Código JAVA:
Ver originalString query
= "SeLECT id , title FrOm contents"; // Reemplazo de doble espacios
if ( query.contains(" ") )
{
query = query.replaceAll(" ","");
}
Pattern select_pt = Pattern.compile("((S|s){1}(E|e){1}(L|l){1}(E|e){1}(C|c){1}(T|t){1})");
Matcher select_mt = select_pt.matcher(query);
if ( select_mt.find() )
{
query = query.replace( select_mt.group(0) , "SELECT" );
}
Para finalizar, lo más formal, al tratar de realizar un compilador, es utilizar herramientas donde puedas ingresar tu gramatica en BNF, hacer un lexer, parser, etc. JFlex y Cup te pueden ayudar, eso sí, requieren un conocimiento un poco más avanzado de Java y tal vez sobre teoría de compiladores.
Saludos