import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "^(.*?)[^\\S\\n]*;[^\\S\\n](.*?)[^\\S\\n]*;[^\\S\\n](.*?)(?:[^\\S\\n]+)#[^\\S\\n]*(E[\\w.]*)[^\\S\\n]*(?:\\[\\w\\])[^\\S\\n]*\\((.*)\\)$";
final String string = "1F468 200D 1F9B0 ; RGI_Emoji_ZWJ_Sequence ; man: red hair # E11.0 [1] (đšâđа)\n"
+ "1F468 200D 1F9B1 ; RGI_Emoji_ZWJ_Sequence ; man: curly hair # E11.0 [1] (đšâđб)\n"
+ "1F468 200D 1F9B2 ; RGI_Emoji_ZWJ_Sequence ; man: bald # E11.0 [1] (đšâđŠČ)\n"
+ "1F468 200D 1F9B3 ; RGI_Emoji_ZWJ_Sequence ; man: white hair # E11.0 [1] (đšâđŠł)\n"
+ "1F468 1F3FB 200D 1F9B0 ; RGI_Emoji_ZWJ_Sequence ; man: light skin tone, red hair # E11.0 [1] (đšđ»âđа)\n"
+ "1F468 1F3FB 200D 1F9B1 ; RGI_Emoji_ZWJ_Sequence ; man: light skin tone, curly hair # E11.0 [1] (đšđ»âđб)\n"
+ "1F468 1F3FB 200D 1F9B2 ; RGI_Emoji_ZWJ_Sequence ; man: light skin tone, bald # E11.0 [1] (đšđ»âđŠČ)\n"
+ "1F468 1F3FB 200D 1F9B3 ; RGI_Emoji_ZWJ_Sequence ; man: light skin tone, white hair # E11.0 [1] (đšđ»âđŠł)\n"
+ "1F468 1F3FC 200D 1F9B0 ; RGI_Emoji_ZWJ_Sequence ; man: medium-light skin tone, red hair # E11.0 [1] (đšđŒâđа)\n"
+ "1F468 1F3FC 200D 1F9B1 ; RGI_Emoji_ZWJ_Sequence ; man: medium-light skin tone, curly hair # E11.0 [1] (đšđŒâđб)\n"
+ "1F468 1F3FC 200D 1F9B2 ; RGI_Emoji_ZWJ_Sequence ; man: medium-light skin tone, bald # E11.0 [1] (đšđŒâđŠČ)\n"
+ "1F468 1F3FC 200D 1F9B3 ; RGI_Emoji_ZWJ_Sequence ; man: medium-light skin tone, white hair # E11.0 [1] (đšđŒâđŠł)\n"
+ "1F468 1F3FD 200D 1F9B0 ; RGI_Emoji_ZWJ_Sequence ; man: medium skin tone, red hair # E11.0 [1] (đšđœâđа)\n"
+ "1F468 1F3FD 200D 1F9B1 ; RGI_Emoji_ZWJ_Sequence ; man: medium skin tone, curly hair # E11.0 [1] (đšđœâđб)\n"
+ "1F468 1F3FD 200D 1F9B2 ; RGI_Emoji_ZWJ_Sequence ; man: medium skin tone, bald # E11.0 [1] (đšđœâđŠČ)\n"
+ "1F468 1F3FD 200D 1F9B3 ; RGI_Emoji_ZWJ_Sequence ; man: medium skin tone, white hair # E11.0 [1] (đšđœâđŠł)\n"
+ "1F468 1F3FE 200D 1F9B0 ; RGI_Emoji_ZWJ_Sequence ; man: medium-dark skin tone, red hair # E11.0 [1] (đšđŸâđа)\n"
+ "1F468 1F3FE 200D 1F9B1 ; RGI_Emoji_ZWJ_Sequence ; man: medium-dark skin tone, curly hair # E11.0 [1] (đšđŸâđб)\n"
+ "1F468 1F3FE 200D 1F9B2 ; RGI_Emoji_ZWJ_Sequence ; man: medium-dark skin tone, bald # E11.0 [1] (đšđŸâđŠČ)\n"
+ "1F468 1F3FE 200D 1F9B3 ; RGI_Emoji_ZWJ_Sequence ; man: medium-dark skin tone, white hair # E11.0 [1] (đšđŸâđŠł)\n"
+ "1F468 1F3FF 200D 1F9B0 ; RGI_Emoji_ZWJ_Sequence ; man: dark skin tone, red hair # E11.0 [1] (đšđżâđа)\n"
+ "1F468 1F3FF 200D 1F9B1 ; RGI_Emoji_ZWJ_Sequence ; man: dark skin tone, curly hair # E11.0 [1] (đšđżâđб)\n"
+ "1F468 1F3FF 200D 1F9B2 ; RGI_Emoji_ZWJ_Sequence ; man: dark skin tone, bald # E11.0 [1] (đšđżâđŠČ)\n"
+ "1F468 1F3FF 200D 1F9B3 ; RGI_Emoji_ZWJ_Sequence ; man: dark skin tone, white hair # E11.0 [1] (đšđżâđŠł)\n"
+ "1F469 200D 1F9B0 ; RGI_Emoji_ZWJ_Sequence ; woman: red hair # E11.0 [1] (đ©âđа)\n"
+ "1F469 200D 1F9B1 ; RGI_Emoji_ZWJ_Sequence ; woman: curly hair # E11.0 [1] (đ©âđб)\n"
+ "1F469 200D 1F9B2 ; RGI_Emoji_ZWJ_Sequence ; woman: bald # E11.0 [1] (đ©âđŠČ)\n"
+ "1F469 200D 1F9B3 ; RGI_Emoji_ZWJ_Sequence ; woman: white hair # E11.0 [1] (đ©âđŠł)\n"
+ "1F469 1F3FB 200D 1F9B0 ; RGI_Emoji_ZWJ_Sequence ; woman: light skin tone, red hair # E11.0 [1] (đ©đ»âđа)\n"
+ "1F469 1F3FB 200D 1F9B1 ; RGI_Emoji_ZWJ_Sequence ; woman: light skin tone, curly hair # E11.0 [1] (đ©đ»âđб)\n"
+ "1F469 1F3FB 200D 1F9B2 ; RGI_Emoji_ZWJ_Sequence ; woman: light skin tone, bald # E11.0 [1] (đ©đ»âđŠČ)\n"
+ "1F469 1F3FB 200D 1F9B3 ; RGI_Emoji_ZWJ_Sequence ; woman: light skin tone, white hair # E11.0 [1] (đ©đ»âđŠł)\n"
+ "1F469 1F3FC 200D 1F9B0 ; RGI_Emoji_ZWJ_Sequence ; woman: medium-light skin tone, red hair # E11.0 [1] (đ©đŒâđа)\n"
+ "1F469 1F3FC 200D 1F9B1 ; RGI_Emoji_ZWJ_Sequence ; woman: medium-light skin tone, curly hair # E11.0 [1] (đ©đŒâđб)\n"
+ "1F469 1F3FC 200D 1F9B2 ; RGI_Emoji_ZWJ_Sequence ; woman: medium-light skin tone, bald # E11.0 [1] (đ©đŒâđŠČ)\n"
+ "1F469 1F3FC 200D 1F9B3 ; RGI_Emoji_ZWJ_Sequence ; woman: medium-light skin tone, white hair # E11.0 [1] (đ©đŒâđŠł)\n"
+ "1F469 1F3FD 200D 1F9B0 ; RGI_Emoji_ZWJ_Sequence ; woman: medium skin tone, red hair # E11.0 [1] (đ©đœâđа)\n"
+ "1F469 1F3FD 200D 1F9B1 ; RGI_Emoji_ZWJ_Sequence ; woman: medium skin tone, curly hair # E11.0 [1] (đ©đœâđб)\n"
+ "1F469 1F3FD 200D 1F9B2 ; RGI_Emoji_ZWJ_Sequence ; woman: medium skin tone, bald # E11.0 [1] (đ©đœâđŠČ)\n"
+ "1F469 1F3FD 200D 1F9B3 ; RGI_Emoji_ZWJ_Sequence ; woman: medium skin tone, white hair # E11.0 [1] (đ©đœâđŠł)\n"
+ "1F469 1F3FE 200D 1F9B0 ; RGI_Emoji_ZWJ_Sequence ; woman: medium-dark skin tone, red hair # E11.0 [1] (đ©đŸâđа)\n"
+ "1F469 1F3FE 200D 1F9B1 ; RGI_Emoji_ZWJ_Sequence ; woman: medium-dark skin tone, curly hair # E11.0 [1] (đ©đŸâđб)\n"
+ "1F469 1F3FE 200D 1F9B2 ; RGI_Emoji_ZWJ_Sequence ; woman: medium-dark skin tone, bald # E11.0 [1] (đ©đŸâđŠČ)\n"
+ "1F469 1F3FE 200D 1F9B3 ; RGI_Emoji_ZWJ_Sequence ; woman: medium-dark skin tone, white hair # E11.0 [1] (đ©đŸâđŠł)\n"
+ "1F469 1F3FF 200D 1F9B0 ; RGI_Emoji_ZWJ_Sequence ; woman: dark skin tone, red hair # E11.0 [1] (đ©đżâđа)\n"
+ "1F469 1F3FF 200D 1F9B1 ; RGI_Emoji_ZWJ_Sequence ; woman: dark skin tone, curly hair # E11.0 [1] (đ©đżâđб)\n"
+ "1F469 1F3FF 200D 1F9B2 ; RGI_Emoji_ZWJ_Sequence ; woman: dark skin tone, bald # E11.0 [1] (đ©đżâđŠČ)\n"
+ "1F469 1F3FF 200D 1F9B3 ; RGI_Emoji_ZWJ_Sequence ; woman: dark skin tone, white hair # E11.0 [1] (đ©đżâđŠł)\n"
+ "1F9D1 200D 1F9B0 ; RGI_Emoji_ZWJ_Sequence ; person: red hair # E12.1 [1] (đ§âđа)\n"
+ "1F9D1 200D 1F9B1 ; RGI_Emoji_ZWJ_Sequence ; person: curly hair # E12.1 [1] (đ§âđб)\n"
+ "1F9D1 200D 1F9B2 ; RGI_Emoji_ZWJ_Sequence ; person: bald # E12.1 [1] (đ§âđŠČ)\n"
+ "1F9D1 200D 1F9B3 ; RGI_Emoji_ZWJ_Sequence ; person: white hair # E12.1 [1] (đ§âđŠł)\n"
+ "1F9D1 1F3FB 200D 1F9B0 ; RGI_Emoji_ZWJ_Sequence ; person: light skin tone, red hair # E12.1 [1] (đ§đ»âđа)\n"
+ "1F9D1 1F3FB 200D 1F9B1 ; RGI_Emoji_ZWJ_Sequence ; person: light skin tone, curly hair # E12.1 [1] (đ§đ»âđб)\n"
+ "1F9D1 1F3FB 200D 1F9B2 ; RGI_Emoji_ZWJ_Sequence ; person: light skin tone, bald # E12.1 [1] (đ§đ»âđŠČ)\n"
+ "1F9D1 1F3FB 200D 1F9B3 ; RGI_Emoji_ZWJ_Sequence ; person: light skin tone, white hair # E12.1 [1] (đ§đ»âđŠł)\n"
+ "1F9D1 1F3FC 200D 1F9B0 ; RGI_Emoji_ZWJ_Sequence ; person: medium-light skin tone, red hair # E12.1 [1] (đ§đŒâđа)\n"
+ "1F9D1 1F3FC 200D 1F9B1 ; RGI_Emoji_ZWJ_Sequence ; person: medium-light skin tone, curly hair # E12.1 [1] (đ§đŒâđб)\n"
+ "1F9D1 1F3FC 200D 1F9B2 ; RGI_Emoji_ZWJ_Sequence ; person: medium-light skin tone, bald # E12.1 [1] (đ§đŒâđŠČ)\n"
+ "1F9D1 1F3FC 200D 1F9B3 ; RGI_Emoji_ZWJ_Sequence ; person: medium-light skin tone, white hair # E12.1 [1] (đ§đŒâđŠł)\n"
+ "1F9D1 1F3FD 200D 1F9B0 ; RGI_Emoji_ZWJ_Sequence ; person: medium skin tone, red hair # E12.1 [1] (đ§đœâđа)\n"
+ "1F9D1 1F3FD 200D 1F9B1 ; RGI_Emoji_ZWJ_Sequence ; person: medium skin tone, curly hair # E12.1 [1] (đ§đœâđб)\n"
+ "1F9D1 1F3FD 200D 1F9B2 ; RGI_Emoji_ZWJ_Sequence ; person: medium skin tone, bald # E12.1 [1] (đ§đœâđŠČ)\n"
+ "1F9D1 1F3FD 200D 1F9B3 ; RGI_Emoji_ZWJ_Sequence ; person: medium skin tone, white hair # E12.1 [1] (đ§đœâđŠł)\n"
+ "1F9D1 1F3FE 200D 1F9B0 ; RGI_Emoji_ZWJ_Sequence ; person: medium-dark skin tone, red hair # E12.1 [1] (đ§đŸâđа)\n"
+ "1F9D1 1F3FE 200D 1F9B1 ; RGI_Emoji_ZWJ_Sequence ; person: medium-dark skin tone, curly hair # E12.1 [1] (đ§đŸâđб)\n"
+ "1F9D1 1F3FE 200D 1F9B2 ; RGI_Emoji_ZWJ_Sequence ; person: medium-dark skin tone, bald # E12.1 [1] (đ§đŸâđŠČ)\n"
+ "1F9D1 1F3FE 200D 1F9B3 ; RGI_Emoji_ZWJ_Sequence ; person: medium-dark skin tone, white hair # E12.1 [1] (đ§đŸâđŠł)\n"
+ "1F9D1 1F3FF 200D 1F9B0 ; RGI_Emoji_ZWJ_Sequence ; person: dark skin tone, red hair # E12.1 [1] (đ§đżâđа)\n"
+ "1F9D1 1F3FF 200D 1F9B1 ; RGI_Emoji_ZWJ_Sequence ; person: dark skin tone, curly hair # E12.1 [1] (đ§đżâđб)\n"
+ "1F9D1 1F3FF 200D 1F9B2 ; RGI_Emoji_ZWJ_Sequence ; person: dark skin tone, bald # E12.1 [1] (đ§đżâđŠČ)\n"
+ "1F9D1 1F3FF 200D 1F9B3 ; RGI_Emoji_ZWJ_Sequence ; person: dark skin tone, white hair # E12.1 [1] (đ§đżâđŠł)";
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