Message:
^\[(?'Date'\d{2}:\d{2}:\d{2})\] <(?'Nickname'.*)> (?'Message'.*)$
Notice:
^\[(?'Date'\d{2}:\d{2}:\d{2})\] -(?'Nickname'.*)- (?'Message'.*)$
Joins:
^\[(?'Date'\d{2}:\d{2}:\d{2})\] \*\*\* (?'Happening'Joins): (?'Nickname'.*) \((?'Hostmask'(?'Username'.*)@(?'Hostname'.*))\)$
PartsOrQuits:
^\[(?'Date'\d{2}:\d{2}:\d{2})\] \*\*\* (?'Happening'Parts|Quits): (?'Nickname'.*) \((?'Hostmask'(?'Username'.*)@(?'Hostname'.*))\) \((?'QuitReason'.*)\)$
NicknameChange:
^\[(?'Date'\d{2}:\d{2}:\d{2})\] \*\*\* (?'FormerNickname'.*) is now known as (?'NewNickname'.*)$
Action:
^\[(?'Date'\d{2}:\d{2}:\d{2})\] \* (?'Nickname'\w*) (?'Action'.*)$
ModeChange:
^\[(?'Date'\d{2}:\d{2}:\d{2})\] \*\*\* (?'Nickname'\w*) sets mode: (?'Mode'.*)( (?'Target'.*))?$