import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "^(К?[0-9, ()м]+) (?:Ламінат|Акція Ламінат) ([A-Za-z0-9\\/( .]*[\\d)]) (.+?)(?: \\(\\d|\\s*$)";
final String string = "3924 Ламінат Parfe Floor 7/32 Дуб Мірандо (2,663)/10шт\n"
+ "8199 Ламінат 8 Variostep Classic Дуб Альпійський (2,22м2)/9 шт.\n"
+ "8766 Акція Ламінат 8 Венге Кіото (2,22м2)/9 шт.\n"
+ "К395 Акція Ламінат 8 Дуб Торнадо (2,22 м2)/9 шт.\n"
+ "34 818 Ламінат The BRUSH 8 Дуб Бежевий (1,996 м2)/8шт\n"
+ "31 506 (32 065) Ламінат Neutral 4V (Trend world) Дуб Монумент (Дуб Дерби) (1,996 м2)/8шт\n"
+ "27 610 (41404 (8мм) Ламінат Discovery 4V 10/32 Дуб Верден сніжний (1,646 м2)/8 шт\n"
+ "145 Ламінат Vitality Style Aqua Protect 4V 8/32 Дуб Модерн Білий\n"
+ "33 680 Ламінат Extr. dynamic 8 Старий дуб Полліно фас. (1,996 м2)/8шт\n"
+ "53 687 Ламінат Ambience 4V WR 10/33 Wolta Oak (1,624 м2)/8шт.\n\n"
+ "60 040 Ламінат Vitality Deluxe 4V 8/32 Дуб Берлі (2.162 м2)/9шт.\n"
+ "60 328 Ламінат Vitality Deluxe 4V 8/32 Дуб Амбарний (2.162 м2)/9шт.\n"
+ "60 491 Ламінат Vitality Deluxe 4V 8/32 Дуб Вибілений (2.162 м2)/9шт.\n"
+ "60 542 Ламінат Vitality Deluxe 4V 8/32 Дуб Елегантний (2.162 м2)/9шт.\n"
+ "60 544 Ламінат Vitality Deluxe 4V 8/32 Горіх Селект (2.162 м2)/9шт.\n"
+ "60 581 Ламінат Vitality Deluxe 4V 8/32 Дуб Суперіор (2.162 м2)/9шт.\n"
+ "60 583 Ламінат Vitality Deluxe 4V 8/32 Дуб лакований натур. (2.162 м2)/9шт.\n"
+ "60 584 Ламінат Vitality Deluxe 4V 8/32 Дуб Авеню (2.162 м2)/9шт.\n"
+ "60 619 Ламінат Vitality Deluxe 4V 8/32 Дуб Білий промаслений (2.162 м2)/9шт.\n"
+ "60 624 Ламінат Vitality Deluxe 4V 8/32 Ясень садовий (2.162 м2)/9шт.\n"
+ "60 796 Ламінат Vitality Deluxe 4V 8/32 Дуб пісочний (2.162 м2)/9шт.\n"
+ "60 900 Ламінат Vitality Deluxe 4V 8/32 Дуб сірувато-димчастий (2.162 м2)/9шт.\n"
+ "60 902 Ламінат Vitality Deluxe 4V 8/32 Дуб Iпанема (2.162 м2)/9шт.\n"
+ "60 903 Ламінат Vitality Deluxe 4V 8/32 Дуб Замшевий (2.162 м2)/9шт.\n"
+ "60 904 Ламінат Vitality Deluxe 4V 8/32 Дуб Сумі (2.162 м2)/9шт.\n"
+ "60 909 Ламінат Vitality Deluxe 4V 8/32 Дуб ретушований (2.162 м2)/9шт.\n"
+ "Vitality Style 4V\n"
+ "135 Ламінат Vitality Style 4V 8/32 Дуб Дуб Вибілений Сонячний (2.179 м2)/9шт\n"
+ "137 Ламінат Vitality Style 4V 8/32 Дуб Вікторіанський Коричневий (2.179 м2)/9шт\n"
+ "138 Ламінат Vitality Style 4V 8/32 Дуб Натуральний Бежевий (2.179 м2)/9шт\n"
+ "145 Ламінат Vitality Style 4V 8/32 Дуб Модерн Білий (2.179 м2)/9шт\n"
+ "148 Ламінат Vitality Style 4V 8/32 Дуб Чорний (2.179 м2)/9шт\n"
+ "174 Ламінат Vitality Style 4V 8/32 Дуб Медовий (2.179 м2)/9шт\n"
+ "177 Ламінат Vitality Style 4V 8/32 Дуб Морозний (2.179 м2)/9шт\n"
+ "178 Ламінат Vitality Style 4V 8/32 Дуб Модерн Вишуканий (2.179 м2)/9шт\n"
+ "179 Ламінат Vitality Style 4V 8/32 Дуб Гірський Сірий (2.179 м2)/9шт\n\n"
+ "135 Ламінат Vitality Style Aqua Protect 4V 8/32 Дуб Дуб Вибілений Сонячний\n"
+ "137 Ламінат Vitality Style Aqua Protect 4V 8/32 Дуб Вікторіанський Коричневий \n"
+ "138 Ламінат Vitality Style Aqua Protect 4V 8/32 Дуб Натуральний Бежевий\n"
+ "145 Ламінат Vitality Style Aqua Protect 4V 8/32 Дуб Модерн Білий\n"
+ "148 Ламінат Vitality Style Aqua Protect 4V 8/32 Дуб Чорний\n"
+ "149 Ламінат Vitality Style Aqua Protect 4V 8/32 Дуб Сірий океан\n"
+ "174 Ламінат Vitality Style Aqua Protect 4V 8/32 Дуб Медовий\n"
+ "175 Ламінат Vitality Style Aqua Protect 4V 8/32 Дуб Брендон\n"
+ "177 Ламінат Vitality Style Aqua Protect 4V 8/32 Дуб Морозний\n"
+ "178 Ламінат Vitality Style Aqua Protect 4V 8/32 Дуб Модерн Вишуканий\n"
+ "179 Ламінат Vitality Style Aqua Protect 4V 8/32 Дуб Гірський Сірий\n";
final Pattern pattern = Pattern.compile(regex, Pattern.MULTILINE);
final Matcher matcher = pattern.matcher(string);
while (matcher.find()) {
System.out.println("Full match: " + matcher.group(0));
for (int i = 1; i <= matcher.groupCount(); i++) {
System.out.println("Group " + i + ": " + matcher.group(i));
}
}
}
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Java, please visit: https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html