One more bad subfield, and replace with obvious character for later investigation
authordbs <dbs@6d9bc8c9-1ec2-4278-b937-99fde70a366f>
Mon, 20 Apr 2009 01:06:36 +0000 (01:06 +0000)
committerdbs <dbs@6d9bc8c9-1ec2-4278-b937-99fde70a366f>
Mon, 20 Apr 2009 01:06:36 +0000 (01:06 +0000)
git-svn-id: svn://svn.open-ils.org/ILS-Contrib/conifer/trunk@359 6d9bc8c9-1ec2-4278-b937-99fde70a366f

tools/migration-scripts/fix_bad_marcxml.pl

index 44a0f9a..0c6ad24 100644 (file)
@@ -35,10 +35,13 @@ sub process_file {
                # This will at least enable MARC::File::XML to process it:
                if ($_ =~ m#<subfield code=""">#o) {
                        print STDERR "Bad subfield code \" at line $lineno of file $file\n";
-                       $_ =~ s{<subfield code=""">}{<subfield code="a">}o;
+                       $_ =~ s{<subfield code=""">}{<subfield code="Z">}o;
                } elsif ($_ =~ m#<subfield code="<">#o) {
                        print STDERR "Bad subfield code < at line $lineno of file $file\n";
-                       $_ =~ s{<subfield code="<">}{<subfield code="a">}o;
+                       $_ =~ s{<subfield code="<">}{<subfield code="Z">}o;
+               } elsif ($_ =~ m#<subfield code="&">#o) {
+                       print STDERR "Bad subfield code & at line $lineno of file $file\n";
+                       $_ =~ s{<subfield code="&">}{<subfield code="Z">}o;
                }
                
                $lastline = $_;