С учетом текстовых строк, таких как
Assigned to: Hon Keith Davis Dept: S25
Assigned for All Purposes to: Hon. Howard Halm, Dept. 93
Judge Randolph M. Hammock Dept. 93
HONORABLE JOANNE B. O'DONNELL
Honorable Michael S. Williams
Judge: Hon. Yolanda Orozco
Я хочу запоминать имя судьи и его отдел, если таковой имеется.
Это то, что я придумалдо сих пор захватывает только имя:
(?i)(?:(?:Hon(?:orable)?|Judge)(?:[:\. ]+))+((?-i)[A-Z][A-Za-z. '-]{3,})
Проблема в том, что для 1-й и 3-й строк захватывается часть Dept
, поэтому я получаю Keith Davis Dept
и Randolph M. Hammock Dept
Когда я попытался добавить вторую группу захвата, добавив
[, ]+(?:(?:Dept)[\.: ]+([A-Z0-9]+))?
к приведенному выше регулярному выражению, это сработало для первых 2 строк, но не для остальных.
Как можноЯ исключаю Dept
из 1-й группы захвата и использую 2-ю группу захвата, чтобы получить название / номер отдела?
Текущее регулярное выражение и примеры: https://regexr.com/4n85p