Busqueda de palabras en java
hola, estoy programando un libro electronico de cuentos en java (son 5 cuentos, y cada cuento posee 4 parrafos, cada parrafo lo declare como un String distinto, las oraciones de cada parrafo comienzan con letra mayuscula), el programa debe tener las siguientes funcionalidades de busquedas de palabras:
Dada una palabra, contar la cantidad de apariciones de la misma en todo el libro electrónico (las veces que aparece en cada cuento y el total para todos los cuentos), en un cuento determinado o en un párrafo de un cuento.
Dada una palabra, indicar donde ocurre la primera aparición de la misma:
Cuento número del cuento
Párrafo: número de párrafo
Oración: número de oración y contenido de la misma
Dado un párrafo de un cuento, se debe indicar la cantidad oraciones que tiene el mismo.
Dado el identificador de un cuento (1 al 5), mostrar el contenido del mismo hasta un carácter dado.
gracias...
Dada una palabra, contar la cantidad de apariciones de la misma en todo el libro electrónico (las veces que aparece en cada cuento y el total para todos los cuentos), en un cuento determinado o en un párrafo de un cuento.
Dada una palabra, indicar donde ocurre la primera aparición de la misma:
Cuento número del cuento
Párrafo: número de párrafo
Oración: número de oración y contenido de la misma
Dado un párrafo de un cuento, se debe indicar la cantidad oraciones que tiene el mismo.
Dado el identificador de un cuento (1 al 5), mostrar el contenido del mismo hasta un carácter dado.
gracias...
bueno pedro, mi pregunta es como encontrar una palabra dentro de un string con muchas más palabras, por ejemplo
String str = \"direccion de correo electronico\";
quiero buscar \"correo\", e indicar que se encuentra en un numero de palabra espefico (en este caso seria la 3ra palabra)
String str = \"direccion de correo electronico\";
quiero buscar \"correo\", e indicar que se encuentra en un numero de palabra espefico (en este caso seria la 3ra palabra)
Hola, a ver si esto te sirve o por lo menos te da una idea útil, se trata del método split(String s) de la clase String.
public int palabraNumero(String cadena, String palabra)
{
int posicion = -1;
String[] trozos = cadena.split(" ");
for (int i = 0; i < trozos.length; i++)
if (trozos[i].compareTo(palabra) == 0)
{
posicion = i + 1;
return posicion;
}
return posicion;
}
En este ejemplo se pasa como parámetro dos String, uno con la frase y otro con la palabra, se divide la frase en trozos usando split(" "), la pega es que de esta manera se divide la cadena por según los espacios en blanco, no tiene en cuenta . , ; esto requiere un poco más de faena.
Espero que esto te sea de ayuda, saludos.
public int palabraNumero(String cadena, String palabra)
{
int posicion = -1;
String[] trozos = cadena.split(" ");
for (int i = 0; i < trozos.length; i++)
if (trozos[i].compareTo(palabra) == 0)
{
posicion = i + 1;
return posicion;
}
return posicion;
}
En este ejemplo se pasa como parámetro dos String, uno con la frase y otro con la palabra, se divide la frase en trozos usando split(" "), la pega es que de esta manera se divide la cadena por según los espacios en blanco, no tiene en cuenta . , ; esto requiere un poco más de faena.
Espero que esto te sea de ayuda, saludos.
