Buscar
Social
Ofertas laborales ES

Foro sobre Java SE > Ayuda con los String

Hola.. mi problema es el siguiente... estoy realizando un menú autocompletado y lo que hace mi menú en que busca por la primera palabra y también por la ultima palabra con los métodos startsWith y endsWith pero lo que quiero realizar es que la búsqueda sea por cualquier parte de la cadena.

julio 28, 2013 | Unregistered CommenterSKZ

http://docs.oracle.com/javase/7/docs/api/java/lang/String.html#indexOf(java.lang.String)
http://docs.oracle.com/javase/7/docs/api/java/lang/String.html#contains(java.lang.CharSequence)

julio 28, 2013 | Registered Commenterchoces

No llego a solucionar mi problema... por favor mas soluciones. Gracias

julio 29, 2013 | Unregistered CommenterSKZ

Buenas,

Con los metodos que te apunta choces (indexof y contains) deberias poder buscar dentro de una cadena sin problemas.
Si lo que pasa es que no te has explicado bien, entonces detalla y extiende tu pregunta poniendo ejemplos de lo que pretendes conseguir.

Un saludo

julio 29, 2013 | Unregistered CommenterUnoPorAhi

"... lo que quiero realizar es que la búsqueda sea por cualquier parte de la cadena."

Esos métodos sí resuelven el problema, tal y como lo has planteado.

julio 29, 2013 | Registered Commenterchoces

Un SSCCE http://sscce.org/ como el que sigue prueba los métodos de referencia.

public class Test {

public static void main(String[] args) {

String s1 = "123 abc a1b2";
String s2 = "a1";
String contiene = "La cadena ".concat("\"").concat(s1).concat("\"").concat(" contiene la cadena ").concat("\"").concat(s2).concat("\"");

final Locale locale = Locale.getDefault();

System.out.println("Búsqueda con contains");
if (s1.toLowerCase(locale).contains(s2.toLowerCase(locale))) {
System.out.println(contiene);
}

System.out.println("Búsqueda con indexOf");
if (s1.toLowerCase(locale).indexOf(s2.toLowerCase(locale)) >= 0) {
System.out.println(contiene);
}

}
}

julio 29, 2013 | Registered Commenterchoces

Gracias por sus respuesta... pude solucionar mi problema con lo explicado. Gracias

julio 31, 2013 | Unregistered CommenterSKZ