Non-Capturing Group(?:(Type: )(?<type>\w+)) Type: the literal text Type: (case sensitive) \w+any word character, repeated at least once
*the literal (3210 / 408 / 2016) , repeated any number of times
Non-Capturing Group(?:(Year: )(?<year>\d{4})) Year: the literal text Year: (case sensitive) \d{4}a digit, repeated exactly 4 times
*the literal (3210 / 408 / 2016) , repeated any number of times
Non-Capturing Group(?:(Title: )(?<title>[^ISBN]*)) Title: the literal text Title: (case sensitive) Group title(?<title>[^ISBN]*) Negated Character Class[^ISBN]* *matches any number of characters outside the set below:
Ithe literal I (7310 / 1118 / 4916) (case sensitive)
Sthe literal S (8310 / 1238 / 5316) (case sensitive)
Bthe literal B (6610 / 1028 / 4216) (case sensitive)
Nthe literal N (7810 / 1168 / 4E16) (case sensitive)
Non-Capturing Group(?:(ISBN:) *(?<ISBN>\d*))* *repeats the group contents below any number of times:
ISBN:the literal text ISBN: (case sensitive) *the literal (3210 / 408 / 2016) , repeated any number of times
\d*a digit, repeated any number of times
*the literal (3210 / 408 / 2016) , repeated any number of times
Non-Capturing Group(?:(Pages: )(?<pages>\d*))* *repeats the group contents below any number of times:
Pages: the literal text Pages: (case sensitive) \d*a digit, repeated any number of times
*the literal (3210 / 408 / 2016) , repeated any number of times
Non-Capturing Group(?:(Authors: )(?<author1>(?:(?:(?!Length: )[\w ,])*) *)) Authors: the literal text Authors: (case sensitive) Group author1(?<author1>(?:(?:(?!Length: )[\w ,])*) *) Non-Capturing Group(?:(?:(?!Length: )[\w ,])*) Non-Capturing Group(?:(?!Length: )[\w ,])* *repeats the group contents below any number of times:
Negative Lookahead(?!Length: ) Length: the literal text Length: (case sensitive) \wany word character
the literal (3210 / 408 / 2016)
,the literal , (4410 / 548 / 2C16)
*the literal (3210 / 408 / 2016) , repeated any number of times
*the literal (3210 / 408 / 2016) , repeated any number of times
;*the literal ; (5910 / 738 / 3B16) , repeated any number of times
*the literal (3210 / 408 / 2016) , repeated any number of times
Group author2(?<author2>(?:(?:(?!Length: )[\w ,])*) *) Non-Capturing Group(?:(?:(?!Length: )[\w ,])*) Non-Capturing Group(?:(?!Length: )[\w ,])* *the literal (3210 / 408 / 2016) , repeated any number of times
Non-Capturing Group(?:(Length: )(?<length>\d*))* *the literal (3210 / 408 / 2016) , repeated any number of times
Non-Capturing Group(?:Media Type: )* Group discType(?<discType>[\w ,]*) 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