Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗jvSpRgPT 80 of 322 menu
◀ ▶

Все группы совпадения в Java

В Java нет отдельного объекта-кортежа для всех групп совпадения. Если нужно пройтись по ним одним циклом, используют groupCount и номера group(n):

import java.util.ArrayList; import java.util.List; import java.util.regex.Matcher; import java.util.regex.Pattern; public class Main { public static void main(String[] args) { String txt = "123 456 789"; Pattern pattern = Pattern.compile("(\\d)(\\d)(\\d)"); Matcher matcher = pattern.matcher(txt); if (matcher.find()) { List<String> groups = new ArrayList<>(); for (int i = 0; i <= matcher.groupCount(); i++) { groups.add(matcher.group(i)); } System.out.println(groups); } } }

Цикл начинается с нуля, если нужно включить полное совпадение. Если нужны только группы из скобок, начинайте с 1.

Дана строка с адресом сайта:

String txt = "http://domain.ru";

Разложите протокол, имя домена и зону по отдельным группам и выведите их одним списком в консоль.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить