import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "(^[-rwx]{10}\\s*[\\w\\d]*\\s*[^\\s]*\\s*[^\\s]*\\s*(?<size>\\d*)\\s*.{20}\\s*(?<name>[^\\n]*)$)*";
final String string = "Searching for host...\n"
+ "Connecting to host...\n"
+ "Authenticating...\n"
+ "Using username \"cambrionix-bamboo\".\n"
+ "Authenticating with pre-entered password.\n"
+ "Authenticated.\n"
+ "Starting the session...\n"
+ "Session started.\n"
+ "Active session: [1] cambrionix-bamboo@cambrionix.sftp.wpengine.com\n"
+ "transfer binary\n"
+ "batch continue\n"
+ "/Downloads/API\n"
+ "-rw-rw-r-- 0 cambrionix-bamboo www-data 19637888 Mar 29 19:32:58 2022 Cambrionix API Setup 3.2.8-beta+17.exe\n"
+ "-rw-rw-r-- 0 cambrionix-bamboo www-data 12898304 Dec 13 15:09:16 2021 Cambrionix API Setup 3.0.2+7.exe\n"
+ "-rw-rw-r-- 0 33 www-data 12910208 Jan 27 8:32:26 2022 Cambrionix API Setup 3.1.5+8.exe\n"
+ "-rw-rw-r-- 0 33 www-data 12523791 Sep 22 14:20:26 2021 Cambrionix API Setup 2.9.287.exe\n"
+ "-rw-rw-r-- 0 33 www-data 12875440 Sep 22 14:20:20 2021 Cambrionix API Setup 2.19.1+2.exe\n"
+ "-rw-rw-r-- 0 33 www-data 19423248 Sep 22 14:20:28 2021 Cambrionix API Setup 2.21.9-development+18.exe\n"
+ "-rw-rw-r-- 0 cambrionix-bamboo www-data 19730000 Apr 5 16:51:12 2022 Cambrionix API Setup 3.3.0-alpha+216.exe\n"
+ "-rw-rw-r-- 0 33 www-data 12868384 Sep 23 14:02:57 2021 Cambrionix API Setup 2.21.15+4.exe\n"
+ "-rw-rw-r-- 0 cambrionix-bamboo www-data 19661568 Apr 8 11:35:32 2022 Cambrionix API Setup 3.2.8+10.exe\n"
+ "-rw-rw-r-- 0 33 www-data 12873992 Sep 22 14:20:23 2021 Cambrionix API Setup 2.19.1+3.exe\n"
+ "-rw-rw-r-- 0 33 www-data 13096592 Sep 22 14:20:24 2021 Cambrionix API Setup 2.16.5+5.exe\n"
+ "-rw-rw-r-- 0 33 www-data 12549552 Sep 22 14:20:24 2021 Cambrionix API Setup 2.14.306.exe\n"
+ "-rw-rw-r-- 0 33 www-data 7448326 Sep 22 14:20:17 2021 Cambrionix API Setup 2.19.1+2.pkg\n"
+ "-rw-rw-r-- 0 33 www-data 4476429 Sep 22 14:20:14 2021 Cambrionix API Setup 2.16.5+5.pkg\n"
+ "-rw-rw-r-- 0 33 www-data 4356365 Sep 22 14:20:11 2021 Cambrionix API Setup 2.9.287.pkg\n"
+ "-rw-rw-r-- 0 cambrionix-bamboo www-data 7446428 Dec 13 15:09:16 2021 Cambrionix API Setup 3.0.2+7.pkg\n"
+ "-rw-rw-r-- 0 cambrionix-bamboo www-data 10661040 Apr 8 11:35:32 2022 Cambrionix API Setup 3.2.8+10.pkg\n"
+ "-rw-rw-r-- 0 33 www-data 7448398 Sep 22 14:20:18 2021 Cambrionix API Setup 2.19.1+3.pkg\n"
+ "-rw-rw-r-- 0 33 www-data 4281285 Sep 22 14:20:11 2021 Cambrionix API Setup 2.14.306.pkg\n"
+ "-rw-rw-r-- 0 cambrionix-bamboo www-data 10688455 Apr 5 16:51:12 2022 Cambrionix API Setup 3.3.0-alpha+216.pkg\n"
+ "-rw-rw-r-- 0 33 www-data 10798506 Sep 22 14:20:23 2021 Cambrionix API Setup 2.21.9-development+18.pkg\n"
+ "-rw-rw-r-- 0 33 www-data 7450806 Jan 27 8:32:26 2022 Cambrionix API Setup 3.1.5+8.pkg\n"
+ "-rw-rw-r-- 0 cambrionix-bamboo www-data 10659854 Mar 29 19:32:58 2022 Cambrionix API Setup 3.2.8-beta+17.pkg\n"
+ "-rw-rw-r-- 0 33 www-data 7430270 Sep 23 14:02:57 2021 Cambrionix API Setup 2.21.15+4.pkg\n"
+ "-rw-rw-r-- 0 cambrionix-bamboo www-data 3681588 Mar 29 19:32:58 2022 cambrionix-api-setup-3.2.8-beta+17-amd64.deb\n"
+ "-rw-rw-r-- 0 cambrionix-bamboo www-data 2164504 Dec 13 15:09:17 2021 cambrionix-api-setup-3.0.2+7-amd64.deb\n"
+ "-rw-rw-r-- 0 33 www-data 7753932 Sep 22 14:20:24 2021 cambrionix-api-setup-2.16.5+5-armhf.deb\n"
+ "-rw-rw-r-- 0 cambrionix-bamboo www-data 3681436 Apr 8 11:35:32 2022 cambrionix-api-setup-3.2.8+10-amd64.deb\n"
+ "-rw-rw-r-- 0 33 www-data 7832428 Sep 22 14:20:15 2021 cambrionix-api-setup-2.19.1+3-armhf.deb\n"
+ "-rw-rw-r-- 0 cambrionix-bamboo www-data 9821820 Mar 29 19:32:59 2022 cambrionix-api-setup-3.2.8-beta+17-armhf.deb\n"
+ "-rw-rw-r-- 0 33 www-data 2537440 Sep 22 14:20:12 2021 cambrionix-api-setup2.14.306-amd64.deb\n"
+ "-rw-rw-r-- 0 33 www-data 2176156 Jan 27 8:32:26 2022 cambrionix-api-setup-3.1.5+8-amd64.deb\n"
+ "-rw-rw-r-- 0 33 www-data 7833460 Sep 22 14:20:19 2021 cambrionix-api-setup-2.19.1+2-armhf.deb\n"
+ "-rw-rw-r-- 0 33 www-data 2182292 Sep 23 14:02:57 2021 cambrionix-api-setup-2.21.15+4-amd64.deb\n"
+ "-rw-rw-r-- 0 33 www-data 7822776 Sep 23 14:02:57 2021 cambrionix-api-setup-2.21.15+4-armhf.deb\n"
+ "-rw-rw-r-- 0 33 www-data 7825468 Jan 27 8:32:26 2022 cambrionix-api-setup-3.1.5+8-armhf.deb\n"
+ "-rw-rw-r-- 0 33 www-data 9935500 Sep 22 14:20:24 2021 cambrionix-api-setup-2.21.9-development+18-armhf.deb\n"
+ "-rw-rw-r-- 0 cambrionix-bamboo www-data 3165116 Apr 5 16:51:12 2022 cambrionix-api-setup-3.3.0-alpha+216-amd64.deb\n"
+ "-rw-rw-r-- 0 cambrionix-bamboo www-data 9818924 Apr 8 11:35:33 2022 cambrionix-api-setup-3.2.8+10-armhf.deb\n"
+ "-rw-rw-r-- 0 cambrionix-bamboo www-data 7819420 Dec 13 15:09:17 2021 cambrionix-api-setup-3.0.2+7-armhf.deb\n"
+ "-rw-rw-r-- 0 33 www-data 3775348 Sep 22 14:20:12 2021 cambrionix-api-setup-2.21.9-development+18-amd64.deb\n"
+ "-rw-rw-r-- 0 33 www-data 2167552 Sep 22 14:20:13 2021 cambrionix-api-setup-2.19.1+3-amd64.deb\n"
+ "-rw-rw-r-- 0 33 www-data 2687380 Sep 22 14:20:13 2021 cambrionix-api-setup-2.16.5+5-amd64.deb\n"
+ "-rw-rw-r-- 0 cambrionix-bamboo www-data 9473480 Apr 5 16:51:12 2022 cambrionix-api-setup-3.3.0-alpha+216-armhf.deb\n"
+ "-rw-rw-r-- 0 33 www-data 3278436 Sep 22 14:21:09 2021 cambrionix-api-setup2.14.306-armhf.deb\n"
+ "-rw-rw-r-- 0 33 www-data 2167232 Sep 22 14:20:11 2021 cambrionix-api-setup-2.19.1+2-amd64.deb";
final Pattern pattern = Pattern.compile(regex, Pattern.MULTILINE | Pattern.CASE_INSENSITIVE);
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