Non-Capturing Group(?:(?:(public|protected|private)\s+)|(?:(abstract|static)\s+)|(?:(final)\s+)|(?:(volatile|synchronized)\s+)|(?:(native|strictfp)\s+))* *repeats the group contents below any number of times:
1st Alternative(?:(public|protected|private)\s+) Non-Capturing Group(?:(public|protected|private)\s+) Group 1(public|protected|private) publicthe literal text public (case sensitive) protectedthe literal text protected (case sensitive) privatethe literal text private (case sensitive) \s+any whitespace character, repeated at least once
2nd Alternative(?:(abstract|static)\s+) Non-Capturing Group(?:(abstract|static)\s+) abstractthe literal text abstract (case sensitive) staticthe literal text static (case sensitive) \s+any whitespace character, repeated at least once
3rd Alternative(?:(final)\s+) Non-Capturing Group(?:(final)\s+) finalthe literal text final (case sensitive) \s+any whitespace character, repeated at least once
4th Alternative(?:(volatile|synchronized)\s+) Non-Capturing Group(?:(volatile|synchronized)\s+) Group 4(volatile|synchronized) volatilethe literal text volatile (case sensitive) 2nd Alternativesynchronized synchronizedthe literal text synchronized (case sensitive) \s+any whitespace character, repeated at least once
5th Alternative(?:(native|strictfp)\s+) Non-Capturing Group(?:(native|strictfp)\s+) nativethe literal text native (case sensitive) strictfpthe literal text strictfp (case sensitive) \s+any whitespace character, repeated at least once
Group 6([a-zA-Z_][[:alnum:]]+) \s+any whitespace character, repeated at least once
Group 7([a-zA-Z_][[:word:]<>\[\]]+) \s*any whitespace character, repeated any number of times
\(the literal ( (4010 / 508 / 2816)
\s*any whitespace character, repeated any number of times
Non-Capturing Group(?:(?:([a-zA-Z_][[:word:]<>\[\]]+)\s+([a-zA-Z_][[:alnum:]]+)\s*)(?:,\s*([a-zA-Z_][[:word:]<>\[\]]+)\s+([a-zA-Z_][[:alnum:]]+)\s*)*)? \)the literal ) (4110 / 518 / 2916)
\s*any whitespace character, repeated any number of times
\{the literal { (12310 / 1738 / 7B16)
g modifier: global. Finds all matches instead of stopping after the first
m modifier: multiline. Causes ^ and $ to match the start and end of each line, not only the start and end of the string