diff --git a/backend/services/metadata_backfill.py b/backend/services/metadata_backfill.py index 8117493..303328a 100644 --- a/backend/services/metadata_backfill.py +++ b/backend/services/metadata_backfill.py @@ -103,16 +103,20 @@ def _normalise(s: Optional[str]) -> str: # their full project_raw and the operator can edit them in the wizard. _PROJECT_LOC_SUFFIX = re.compile( r""" - \s* # any leading whitespace - [-–—] # hyphen or em-dash (separator before the Loc marker) - \s* # optional spaces - (?:loc|location) # 'Loc' or 'Location' - \.? # optional period - \s* # optional space - \#? # optional '#' - \s* # optional space - \d+ # required digit - \b # word boundary + \s* # any leading whitespace + [-–—.] # separator: hyphen, em-dash, or period + # (operators use any of these — see + # "Mont.Dam.Loc 2-R-25") + \s* + (?:loc|location) # 'Loc' or 'Location' + \.? # optional trailing period after Loc + \s* + (?:no\.?\s*)? # optional "No." or "No " before the digit + # (e.g. "Loc No. 3", "Loc No 5") + \#? # optional '#' + \s* + \d+ # required digit + \b """, re.IGNORECASE | re.VERBOSE, )