^start of line
.*any character (except for line terminators), repeated any number of times
Group type(?<type>fix|refactor|build) fixthe literal text fix (case sensitive) refactorthe literal text refactor (case sensitive) buildthe literal text build (case sensitive) Group scope(?<scope>\(.*\))? ?repeats the group contents below at most once:
\(the literal ( (4010 / 508 / 2816)
.*any character (except for line terminators), repeated any number of times
\)the literal ) (4110 / 518 / 2916)
Group breaking(?<breaking>!)? ?repeats the group contents below at most once:
!the literal ! (3310 / 418 / 2116)
:?optionally matches the literal : (5810 / 728 / 3A16)
?optionally matches the literal (3210 / 408 / 2016)
Group subject(?<subject>.*$)? ?repeats the group contents below at most once:
.*any character (except for line terminators), repeated any number of times
$end of line
.*any character (except for line terminators), repeated any number of times
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