Как разбить string на отдельные слова в java?

Пользователь

от brooklyn , в категории: Java , год назад

Как разбить string на отдельные слова в java?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от jedidiah.brown , год назад

@brooklyn 

Есть несколько способов разбить строку на отдельные слова в Java:

  1. С помощью метода split() класса String:
1
2
String str = "Привет, как дела?";
String[] words = str.split(" "); // Разделение строки по пробелу


В данном примере слова будут сохранены в массиве words, разделитель указывается в кавычках внутри метода split(). Если разделителем является просто пробел, то его можно указать как " ".

  1. С помощью класса StringTokenizer:
1
2
3
4
5
6
String str = "Привет, как дела?";
StringTokenizer tokenizer = new StringTokenizer(str);
while (tokenizer.hasMoreTokens()) {
    String word = tokenizer.nextToken();
    // Используйте полученное слово по своему усмотрению
}


В данном примере создается объект StringTokenizer с заданной строкой. Затем, цикл while используется для перебора всех слов в строке. Полученное слово можно использовать по своему усмотрению.

  1. С использованием метода splitAsStream() класса Pattern:
1
2
3
4
String str = "Привет, как дела?";
Pattern pattern = Pattern.compile("\s+");
List words = pattern.splitAsStream(str)
        .collect(Collectors.toList());


Здесь используется класс Pattern для разбиения строки на отдельные слова. splitAsStream() создает поток слов, который можно собрать в список с помощью метода collect().


В каждом из этих способов полученные слова можно использовать дальше в программе по своему усмотрению.

Пользователь

от montana_hand , год назад

@brooklyn 

В Java, строку можно разделить на отдельные слова, используя метод split() класса String. Метод split() разделяет строку на подстроки, используя указанный разделитель, и возвращает массив этих подстрок. Если разделитель не указан, то применяется пробел.


Например, чтобы разбить строку на слова, можно использовать следующий код:

1
2
String str = "Привет, как дела?";
String[] words = str.split(" "); // Разделение строки по пробелу


В результате выполнения этого кода, в переменной words будет содержаться массив строк {"Привет,", "как", "дела?"}.