Foros aprenderaprogramar.com

Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: 0skar en 05 de Abril 2016, 12:55

Título: Java separar o extraer las palabras de una frase por los espacios String
Publicado por: 0skar en 05 de Abril 2016, 12:55
Buenos días, estoy empezando poquillo a poco con esto de JAVA. Estoy haciendo un ejercicio de una vez introducida una frase, que me imprima cada palabra en una linea. Sin embargo con frase.charAt(i)  lo que hace es imprimirme cada letra en una linea diferente. Que sería lo equivalente a charAt para que en vez de caracteres tomase una palabra entera?

Muchas gracias!
Título: Re:Java separar o extraer las palabras de una frase por los espacios String
Publicado por: César Krall en 07 de Abril 2016, 13:25
Hola Oskar!

Para tomar palabras enteras tendrías que dividir la cadena tomando como carácter de separación el espacio. No es difícil, se puede hacer de varias maneras (con métodos de la clase String, con expresiones regulares, etc.).

Una idea puede ser esta:

Código: [Seleccionar]
   import java.util.Scanner;

public class MiddleNameTest {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String full_Name = scanner.nextLine();
        scanner.close();
        String middleName = full_Name.split(" ")[1].trim();
        System.out.println(middleName);
    }
}

Otro ejemplo

Código: [Seleccionar]
String s = "This is a sample sentence.";
String[] words = s.split("\\s+");
for (int i = 0; i < words.length; i++) {
    // You may want to check for a non-word character before blindly
    // performing a replacement
    // It may also be necessary to adjust the character class
    words[i] = words[i].replaceAll("[^\\w]", "");
}

Para el aprendizaje de Java te recomiendo seguir este curso paso a paso: http://aprenderaprogramar.com/index.php?option=com_content&view=category&id=68&Itemid=188

Saludos!