import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "(\\d)\\n([\\d.]+)\\n([\\d, ]+)\\n([\\d, ]+)\\n([\\d, ]+)\\n([\\d, ]+)\\n([\\d,]+)\\n([-\\d, ]+)$";
final String string = "№;Дата;Месечна вноска;Вноска главница;Вноска лихва;Остатък главница;Такси и комисионни;Паричен поток\n"
+ "0\n"
+ "01.06.2021\n"
+ "0,00\n"
+ "0,00\n"
+ "0,00\n"
+ "140 000,00\n"
+ "246,00\n"
+ "139 754,00\n"
+ "1\n"
+ "01.07.2021\n"
+ "1 610,54\n"
+ "1 318,87\n"
+ "291,67\n"
+ "140 000,00\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "2\n"
+ "01.08.2021\n"
+ "1 610,54\n"
+ "1 321,62\n"
+ "288,92\n"
+ "138 681,13\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "3\n"
+ "01.09.2021\n"
+ "1 610,54\n"
+ "1 324,37\n"
+ "286,17\n"
+ "137 359,51\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "4\n"
+ "01.10.2021\n"
+ "1 610,54\n"
+ "1 327,13\n"
+ "283,41\n"
+ "136 035,14\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "5\n"
+ "01.11.2021\n"
+ "1 610,54\n"
+ "1 329,90\n"
+ "280,64\n"
+ "134 708,01\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "6\n"
+ "01.12.2021\n"
+ "1 610,54\n"
+ "1 332,67\n"
+ "277,87\n"
+ "133 378,11\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "7\n"
+ "01.01.2022\n"
+ "1 610,54\n"
+ "1 335,45\n"
+ "275,09\n"
+ "132 045,44\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "8\n"
+ "01.02.2022\n"
+ "1 610,54\n"
+ "1 338,23\n"
+ "272,31\n"
+ "130 709,99\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "9\n"
+ "01.03.2022\n"
+ "1 610,54\n"
+ "1 341,02\n"
+ "269,52\n"
+ "129 371,76\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "10\n"
+ "01.04.2022\n"
+ "1 610,54\n"
+ "1 343,81\n"
+ "266,73\n"
+ "128 030,74\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "11\n"
+ "01.05.2022\n"
+ "1 610,54\n"
+ "1 346,61\n"
+ "263,93\n"
+ "126 686,93\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "12\n"
+ "01.06.2022\n"
+ "1 610,54\n"
+ "1 349,41\n"
+ "261,13\n"
+ "125 340,32\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "13\n"
+ "01.07.2022\n"
+ "1 610,54\n"
+ "1 352,23\n"
+ "258,31\n"
+ "123 990,91\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "14\n"
+ "01.08.2022\n"
+ "1 610,54\n"
+ "1 355,04\n"
+ "255,50\n"
+ "122 638,68\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "15\n"
+ "01.09.2022\n"
+ "1 610,54\n"
+ "1 357,87\n"
+ "252,67\n"
+ "121 283,64\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "16\n"
+ "01.10.2022\n"
+ "1 610,54\n"
+ "1 360,69\n"
+ "249,85\n"
+ "119 925,77\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "17\n"
+ "01.11.2022\n"
+ "1 610,54\n"
+ "1 363,53\n"
+ "247,01\n"
+ "118 565,08\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "18\n"
+ "01.12.2022\n"
+ "1 610,54\n"
+ "1 366,37\n"
+ "244,17\n"
+ "117 201,55\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "19\n"
+ "01.01.2023\n"
+ "1 610,54\n"
+ "1 369,22\n"
+ "241,32\n"
+ "115 835,18\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "20\n"
+ "01.02.2023\n"
+ "1 610,54\n"
+ "1 372,07\n"
+ "238,47\n"
+ "114 465,96\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "21\n"
+ "01.03.2023\n"
+ "1 610,54\n"
+ "1 374,93\n"
+ "235,61\n"
+ "113 093,89\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "22\n"
+ "01.04.2023\n"
+ "1 610,54\n"
+ "1 377,79\n"
+ "232,75\n"
+ "111 718,96\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "23\n"
+ "01.05.2023\n"
+ "1 610,54\n"
+ "1 380,66\n"
+ "229,88\n"
+ "110 341,17\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "24\n"
+ "01.06.2023\n"
+ "1 610,54\n"
+ "1 383,54\n"
+ "227,00\n"
+ "108 960,51\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "25\n"
+ "01.07.2023\n"
+ "1 610,54\n"
+ "1 386,42\n"
+ "224,12\n"
+ "107 576,97\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "26\n"
+ "01.08.2023\n"
+ "1 610,54\n"
+ "1 389,31\n"
+ "221,23\n"
+ "106 190,55\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "27\n"
+ "01.09.2023\n"
+ "1 610,54\n"
+ "1 392,20\n"
+ "218,34\n"
+ "104 801,24\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "28\n"
+ "01.10.2023\n"
+ "1 610,54\n"
+ "1 395,10\n"
+ "215,44\n"
+ "103 409,04\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "29\n"
+ "01.11.2023\n"
+ "1 610,54\n"
+ "1 398,01\n"
+ "212,53\n"
+ "102 013,94\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "30\n"
+ "01.12.2023\n"
+ "1 610,54\n"
+ "1 400,92\n"
+ "209,62\n"
+ "100 615,93\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "31\n"
+ "01.01.2024\n"
+ "1 610,54\n"
+ "1 403,84\n"
+ "206,70\n"
+ "99 215,01\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "32\n"
+ "01.02.2024\n"
+ "1 610,54\n"
+ "1 406,77\n"
+ "203,77\n"
+ "97 811,17\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "33\n"
+ "01.03.2024\n"
+ "1 610,54\n"
+ "1 409,70\n"
+ "200,84\n"
+ "96 404,40\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "34\n"
+ "01.04.2024\n"
+ "1 610,54\n"
+ "1 412,63\n"
+ "197,91\n"
+ "94 994,70\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "35\n"
+ "01.05.2024\n"
+ "1 610,54\n"
+ "1 415,58\n"
+ "194,96\n"
+ "93 582,07\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "36\n"
+ "01.06.2024\n"
+ "1 610,54\n"
+ "1 418,53\n"
+ "192,01\n"
+ "92 166,49\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "37\n"
+ "01.07.2024\n"
+ "1 610,54\n"
+ "1 421,48\n"
+ "189,06\n"
+ "90 747,96\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "38\n"
+ "01.08.2024\n"
+ "1 610,54\n"
+ "1 424,44\n"
+ "186,10\n"
+ "89 326,48\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "39\n"
+ "01.09.2024\n"
+ "1 610,54\n"
+ "1 427,41\n"
+ "183,13\n"
+ "87 902,04\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "40\n"
+ "01.10.2024\n"
+ "1 610,54\n"
+ "1 430,38\n"
+ "180,16\n"
+ "86 474,63\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "41\n"
+ "01.11.2024\n"
+ "1 610,54\n"
+ "1 433,36\n"
+ "177,18\n"
+ "85 044,25\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "42\n"
+ "01.12.2024\n"
+ "1 610,54\n"
+ "1 436,35\n"
+ "174,19\n"
+ "83 610,89\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "43\n"
+ "01.01.2025\n"
+ "1 610,54\n"
+ "1 439,34\n"
+ "171,20\n"
+ "82 174,54\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "44\n"
+ "01.02.2025\n"
+ "1 610,54\n"
+ "1 442,34\n"
+ "168,20\n"
+ "80 735,20\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "45\n"
+ "01.03.2025\n"
+ "1 610,54\n"
+ "1 445,35\n"
+ "165,19\n"
+ "79 292,86\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "46\n"
+ "01.04.2025\n"
+ "1 610,54\n"
+ "1 448,36\n"
+ "162,18\n"
+ "77 847,51\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "47\n"
+ "01.05.2025\n"
+ "1 610,54\n"
+ "1 451,38\n"
+ "159,16\n"
+ "76 399,15\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "48\n"
+ "01.06.2025\n"
+ "1 610,54\n"
+ "1 454,40\n"
+ "156,14\n"
+ "74 947,77\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "49\n"
+ "01.07.2025\n"
+ "1 610,54\n"
+ "1 457,43\n"
+ "153,11\n"
+ "73 493,37\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "50\n"
+ "01.08.2025\n"
+ "1 610,54\n"
+ "1 460,47\n"
+ "150,07\n"
+ "72 035,94\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "51\n"
+ "01.09.2025\n"
+ "1 610,54\n"
+ "1 463,51\n"
+ "147,03\n"
+ "70 575,47\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "52\n"
+ "01.10.2025\n"
+ "1 610,54\n"
+ "1 466,56\n"
+ "143,98\n"
+ "69 111,96\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "53\n"
+ "01.11.2025\n"
+ "1 610,54\n"
+ "1 469,61\n"
+ "140,93\n"
+ "67 645,40\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "54\n"
+ "01.12.2025\n"
+ "1 610,54\n"
+ "1 472,67\n"
+ "137,87\n"
+ "66 175,79\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "55\n"
+ "01.01.2026\n"
+ "1 610,54\n"
+ "1 475,74\n"
+ "134,80\n"
+ "64 703,12\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "56\n"
+ "01.02.2026\n"
+ "1 610,54\n"
+ "1 478,82\n"
+ "131,72\n"
+ "63 227,38\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "57\n"
+ "01.03.2026\n"
+ "1 610,54\n"
+ "1 481,90\n"
+ "128,64\n"
+ "61 748,56\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "58\n"
+ "01.04.2026\n"
+ "1 610,54\n"
+ "1 484,98\n"
+ "125,56\n"
+ "60 266,66\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "59\n"
+ "01.05.2026\n"
+ "1 610,54\n"
+ "1 488,08\n"
+ "122,46\n"
+ "58 781,68\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "60\n"
+ "01.06.2026\n"
+ "1 610,54\n"
+ "1 491,18\n"
+ "119,36\n"
+ "57 293,60\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "61\n"
+ "01.07.2026\n"
+ "1 610,54\n"
+ "1 494,28\n"
+ "116,26\n"
+ "55 802,42\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "62\n"
+ "01.08.2026\n"
+ "1 610,54\n"
+ "1 497,40\n"
+ "113,14\n"
+ "54 308,14\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "63\n"
+ "01.09.2026\n"
+ "1 610,54\n"
+ "1 500,52\n"
+ "110,02\n"
+ "52 810,74\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "64\n"
+ "01.10.2026\n"
+ "1 610,54\n"
+ "1 503,64\n"
+ "106,90\n"
+ "51 310,22\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "65\n"
+ "01.11.2026\n"
+ "1 610,54\n"
+ "1 506,78\n"
+ "103,76\n"
+ "49 806,58\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "66\n"
+ "01.12.2026\n"
+ "1 610,54\n"
+ "1 509,92\n"
+ "100,62\n"
+ "48 299,80\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "67\n"
+ "01.01.2027\n"
+ "1 610,54\n"
+ "1 513,06\n"
+ "97,48\n"
+ "46 789,88\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "68\n"
+ "01.02.2027\n"
+ "1 610,54\n"
+ "1 516,21\n"
+ "94,33\n"
+ "45 276,82\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "69\n"
+ "01.03.2027\n"
+ "1 610,54\n"
+ "1 519,37\n"
+ "91,17\n"
+ "43 760,61\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "70\n"
+ "01.04.2027\n"
+ "1 610,54\n"
+ "1 522,54\n"
+ "88,00\n"
+ "42 241,24\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "71\n"
+ "01.05.2027\n"
+ "1 610,54\n"
+ "1 525,71\n"
+ "84,83\n"
+ "40 718,70\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "72\n"
+ "01.06.2027\n"
+ "1 610,54\n"
+ "1 528,89\n"
+ "81,65\n"
+ "39 192,99\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "73\n"
+ "01.07.2027\n"
+ "1 610,54\n"
+ "1 532,07\n"
+ "78,47\n"
+ "37 664,10\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "74\n"
+ "01.08.2027\n"
+ "1 610,54\n"
+ "1 535,26\n"
+ "75,28\n"
+ "36 132,03\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "75\n"
+ "01.09.2027\n"
+ "1 610,54\n"
+ "1 538,46\n"
+ "72,08\n"
+ "34 596,77\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "76\n"
+ "01.10.2027\n"
+ "1 610,54\n"
+ "1 541,67\n"
+ "68,87\n"
+ "33 058,31\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "77\n"
+ "01.11.2027\n"
+ "1 610,54\n"
+ "1 544,88\n"
+ "65,66\n"
+ "31 516,64\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "78\n"
+ "01.12.2027\n"
+ "1 610,54\n"
+ "1 548,10\n"
+ "62,44\n"
+ "29 971,76\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "79\n"
+ "01.01.2028\n"
+ "1 610,54\n"
+ "1 551,32\n"
+ "59,22\n"
+ "28 423,66\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "80\n"
+ "01.02.2028\n"
+ "1 610,54\n"
+ "1 554,56\n"
+ "55,98\n"
+ "26 872,34\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "81\n"
+ "01.03.2028\n"
+ "1 610,54\n"
+ "1 557,79\n"
+ "52,75\n"
+ "25 317,78\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "82\n"
+ "01.04.2028\n"
+ "1 610,54\n"
+ "1 561,04\n"
+ "49,50\n"
+ "23 759,99\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "83\n"
+ "01.05.2028\n"
+ "1 610,54\n"
+ "1 564,29\n"
+ "46,25\n"
+ "22 198,95\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "84\n"
+ "01.06.2028\n"
+ "1 610,54\n"
+ "1 567,55\n"
+ "42,99\n"
+ "20 634,66\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "85\n"
+ "01.07.2028\n"
+ "1 610,54\n"
+ "1 570,82\n"
+ "39,72\n"
+ "19 067,11\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "86\n"
+ "01.08.2028\n"
+ "1 610,54\n"
+ "1 574,09\n"
+ "36,45\n"
+ "17 496,29\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "87\n"
+ "01.09.2028\n"
+ "1 610,54\n"
+ "1 577,37\n"
+ "33,17\n"
+ "15 922,20\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "88\n"
+ "01.10.2028\n"
+ "1 610,54\n"
+ "1 580,65\n"
+ "29,89\n"
+ "14 344,83\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "89\n"
+ "01.11.2028\n"
+ "1 610,54\n"
+ "1 583,95\n"
+ "26,59\n"
+ "12 764,18\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "90\n"
+ "01.12.2028\n"
+ "1 610,54\n"
+ "1 587,25\n"
+ "23,29\n"
+ "11 180,23\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "91\n"
+ "01.01.2029\n"
+ "1 610,54\n"
+ "1 590,55\n"
+ "19,99\n"
+ "9 592,98\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "92\n"
+ "01.02.2029\n"
+ "1 610,54\n"
+ "1 593,87\n"
+ "16,67\n"
+ "8 002,43\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "93\n"
+ "01.03.2029\n"
+ "1 610,54\n"
+ "1 597,19\n"
+ "13,35\n"
+ "6 408,56\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "94\n"
+ "01.04.2029\n"
+ "1 610,54\n"
+ "1 600,52\n"
+ "10,02\n"
+ "4 811,37\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "95\n"
+ "01.05.2029\n"
+ "1 610,54\n"
+ "1 603,85\n"
+ "6,69\n"
+ "3 210,85\n"
+ "2,50\n"
+ "-1 613,04\n"
+ "96\n"
+ "01.06.2029\n"
+ "1 610,35\n"
+ "1 607,00\n"
+ "3,35\n"
+ "1 607,00\n"
+ "2,50\n"
+ "-1 612,85";
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