РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
662 of 1163 menu

Метод splitAsStream

Метод splitAsStream класса Pattern разбивает входную строку на поток (Stream) строк, используя регулярное выражение как разделитель. В первый параметр мы передаем строку, которую необходимо разбить. Метод возвращает объект Stream<String>, который можно обрабатывать лениво, например, с помощью forEach, map или collect. В отличие от метода split, который возвращает массив строк, splitAsStream не создает промежуточный массив, что делает его более эффективным при обработке больших строк.

Синтаксис

pattern.splitAsStream(input)

Пример

Давайте разобьем строку "abcde" по разделителю "c" и выведем каждый элемент потока на экран:

import java.util.regex.Pattern; import java.util.stream.Stream; public class Main { public static void main(String[] args) { Pattern pattern = Pattern.compile("c"); Stream<String> stream = pattern.splitAsStream("abcde"); stream.forEach(System.out::println); } }

Результат выполнения кода:

"ab" "de"

Пример

Давайте разобьем строку "12345" по разделителю "3" и соберем результат в список:

import java.util.List; import java.util.regex.Pattern; import java.util.stream.Collectors; public class Main { public static void main(String[] args) { Pattern pattern = Pattern.compile("3"); List<String> res = pattern.splitAsStream("12345") .collect(Collectors.toList()); System.out.println(res); } }

Результат выполнения кода:

[12, 45]

Смотрите также

  • класс Pattern,
    который представляет скомпилированное регулярное выражение
  • метод split,
    который разбивает строку на массив подстрок
  • метод compile,
    который компилирует регулярное выражение в объект Pattern
  • метод matcher,
    который создает сопоставитель для поиска совпадений
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить