Описание проблемы

Как разбить строку на слова и символы?

Решение 1: разделить строку по разделителю

Следующий пример показывает как разделить строку в Java по разделителю с помощью метода split() и вывести подстроку.

public class Example {
   public static void main(String args[]) {
      System.out.println("Пример 1:");
      String str = "разделить-строку-по-разделителю";
      String[] subStr;
      String delimeter = "-"; // Разделитель
      subStr = str.split(delimeter); // Разделения строки str с помощью метода split()
      // Вывод результата на экран
      for(int i = 0; i < subStr.length; i++) { 
         System.out.println(subStr[i]); 
      }
      
      // Ещё один пример разделения
      System.out.println("\nПример 2:");
      str = "разделить.строку.по разделителю";
      delimeter = "\\."; // Разделитель
      subStr = str.split(delimeter);
      // Вывод результата на экран
      for(int i = 0; i < subStr.length; i++) {
         System.out.println(subStr[i]); 
      }
      
     // Ещё один пример разделения с использованием порога
      System.out.println("\nПример 3:");
      str = "разделить!строку!по!разделителю";
      delimeter = "!"; // Разделитель
      subStr = str.split(delimeter, 3); // Разбить строку str с порогом равным 3, который означает, как много подстрок, должно быть возвращено.
      // Вывод результата на экран
      for(int i = 0; i < subStr.length; i++) {
         System.out.println(subStr[i]); 
      }
   }
}

Результат

Получим следующий результат:

Пример 1:
разделить
строку
по
разделителю

Пример 2:
разделить
строку
по разделителю

Пример 3:
разделить
строку
по!разделителю

Решение 2: разбить строку на слова

Ниже продемонстрирован пример, который позволяет в Java разбить строку на слова.

public class Example {
   public static void main(String args[]) {
      String str = "разбить строку на слова"; 
      String[] words = str.split("\\s"); // Разбиение строки на слова с помощью разграничителя (пробел)
      // Вывод на экран
      for(String subStr:words) {
         System.out.println(subStr);  
      }  
   }
}

Результат

Получим следующий результат:

разбить
строку
на
слова

Решение 3: разбить строку на символы в массив

Следующий пример показывает как разбить строку на массив по символу. Для этого просто преобразуем строку в массив с помощью метода toCharArray().

public class Example {
   public static void main(String args[]) {
      String str = "ProgLang"; 
      char[] strToArray = str.toCharArray(); // Преобразуем строку str в массив символов (char)
      // Вывод массива на экран
      for(int i = 0; i < strToArray.length; i++) {
         System.out.print(strToArray[i] + " "); // Для наглядности вставим пробел между индексами
      } 
   }
}

Результат

Получим следующий результат:

P r o g L a n g 

Оглавление