Creo que es más fácil, si es el espacio el que separa las palabras, añádelo detrás
Código Java:
Ver originalif(words.contains(words2.split(" ")[0]+" "){
out put (" si ") ;
}
Si quieres algo más complejo, puede usar expresiones regulares, así
Código Java:
Ver originalSystem.
out.
println("hola que tal me llamo xavi".
matches(".*\\bhol\\b.*")); System.
out.
println("hola que tal me llamo xavi".
matches(".*\\bhola\\b.*")); System.
out.
println("hola,que tal me llamo xavi".
matches(".*\\bhola\\b.*"));
Debes poner .*\\b delante de la palabra que estés buscando (hol en tu caso) y \\b.* detrás. \\b representa un límite de palabra (espacio, tabulador, coma, punto, fin de linea, inicio de linea, ...) . Los .* representan cualquier número de caracteres, sean los que sean. En resumen, se busca la palabra "hol" o "hola" como palabra completa sin importar su posición.
En esos ejemplos que te he puesto, la primera devuelve false y las otras dos true. Fíjate que en la última he puesto una , en vez de un espacio y aun así funciona.
Si quieres que la palabra buscada esté al principio, en vez de .*\\b delante, pon un ^, así
Código Java:
Ver original// false
System.
out.
println("hola que tal me llamo xavi".
matches("^hol\\b.*"));
// true
System.
out.
println("hola que tal me llamo xavi".
matches("^hola\\b.*"));
Se bueno.