import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "^http[s]?:\\/\\/www\\.linkedin\\.com\\/(in|pub|public-profile\\/in|public-profile\\/pub)\\/([\\w]{6}-[\\w]{1,}-[\\w]+)$";
final String string = "https://www.linkedin.com/in/XXXXXX-XXXXX-55301b41\n"
+ "https://www.linkedin.com/pub/XXXXXX-XXXXX-55301b41\n"
+ "https://www.linkedin.com/public-profile/in/XXXXXX-XXXX-b82a7b10a\n"
+ "https://www.linkedin.com/public-profile/pub/XXXXXX-XXXX-b82a7b10a\n\n"
+ "https://www.linkedin.com/in/xxxx-xxxx-ab85a328/%7Bcountry%3Dde%2C+language%3Dde%7D?trk=people-guest_profile-result-card_result-card_full-click\n"
+ "https://www.linkedin.com/edu/school?id=18987\n"
+ "https://www.linkedin.com/in/xxxx-xxxx-55301b41/de\n"
+ "https://www.linkedin.com/pub/xxxxx-xxxxx/98/b7a/22b\n"
+ "https://it.linkedin.com/public-profile/in/xxxx-xxxxx-80520667?challengeId=AQEV3tHveORYsAAAAXQqx1N3bZ7fd44s5ngegJp6rC0UoWvhG2LtAhhgld8h3QyBxorfcLL2iuvK4xh_UKoGguxvX6sFx_nnZA&submissionId=7bc972ed-bfd1-2e16-c395-ad35cb550117\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