[RT17143] Tighted up regex
authorLiam Whalen <liam.whalen@bc.libraries.coop>
Tue, 27 Oct 2015 23:21:06 +0000 (16:21 -0700)
committerLiam Whalen <liam.whalen@bc.libraries.coop>
Tue, 27 Oct 2015 23:21:59 +0000 (16:21 -0700)
The regex used to find bad date1 valus in the 008 needed to be more
specific.[RT17143] Tighted up regex

Signed-off-by: Liam Whalen <liam.whalen@bc.libraries.coop>
data_cleanup/date1/date1_cleanup.pl

index d6bdc6f..968b903 100644 (file)
@@ -61,7 +61,7 @@ sub clean_date1_records {
         INNER JOIN actor.org_unit aou ON ac.circ_lib = aou.id
         WHERE mrfr.record IN (SELECT record
             FROM metabib.real_full_rec
-            WHERE tag = '008' AND substring(value, 8, 4) ~ '(^\\s*\$|^\\d{1,3}\$|[^0-9\\su]|203[1-9])')
+            WHERE tag = '008' AND substring(value, 8, 4) ~ '(^\\s\\s*\$|^\\d{1,3}\\s*\$|[^0-9\\su]|203[1-9])')
         AND (tag = '260' OR tag = '264') AND subfield = 'c' AND value ~ '\\d{4}' AND bre.deleted = false AND aou.shortname NOT IN ('MWP', 'AB', 'LB', 'ITC', 'HBCA')");
     $sth->execute;
     my $records = $sth->fetchall_arrayref([0]);