X-Git-Url: http://git.equinoxoli.org/?p=migration-tools.git;a=blobdiff_plain;f=Equinox-Migration%2Flib%2FEquinox%2FMigration%2FSubfieldMapper.pm;h=34fbde598ba1375fb9b905a9897302e31260f5d6;hp=ae33db0ddf02bf60318cb8aad66d978e41e3d931;hb=4852006b76dc6783492269c2c0ad9da0b9eaee34;hpb=f31b41545e735198c20f969107794b8e024ecfda diff --git a/Equinox-Migration/lib/Equinox/Migration/SubfieldMapper.pm b/Equinox-Migration/lib/Equinox/Migration/SubfieldMapper.pm index ae33db0..34fbde5 100644 --- a/Equinox-Migration/lib/Equinox/Migration/SubfieldMapper.pm +++ b/Equinox-Migration/lib/Equinox/Migration/SubfieldMapper.pm @@ -189,8 +189,15 @@ sub generate { my $map = { mods => [], filt => [] }; $map->{field} = shift @tokens; $map->{tag} = shift @tokens; - for my $tok (@tokens) { + while (my $tok = shift @tokens) { last if ($tok =~ m/^#/); + if ($tok =~ m/^[a-z]:'/) { + $tok .= ' ' . shift @tokens + until ($tokens[0] =~ m/'$/); + $tok .= ' ' . shift @tokens; + $tok =~ s/'//; + $tok =~ s/'$//; + } if ($tok =~ m/^m:/) { push @{$map->{mods}}, $tok } elsif ($tok =~ m/^f:/)