chiark / gitweb /
Parse vessel data in format closer to YPP output
[ypp-sc-tools.db-live.git] / yarrg / Commods.pm
index 3ecb804de2b09e439ba5276de33a0724256e3022..7a29edca970601d3aada7f6c234d1c277ca649f9 100644 (file)
@@ -105,16 +105,17 @@ sub parse_info1 ($$) {
            });
        } elsif (m/^vessels$/) {
            @ctx= (sub {
-               m/^ ([A-Z][a-z\ ]+[a-z]) \t\s*
-                   (small|medium|large) \t\s*
-                   (\d+) \s*\t\s*
-                   (\d+) $/x
+               return if m/^[-+|]+$/;
+               m/^ \| \s* ([A-Z][a-z\ ]+[a-z]) \s*
+                   \| \s* (small|medium|large) \s*
+                   \| \s* ([1-9][0-9,]+) \s*
+                   \| \s* ([1-9][0-9,]+) \s*
+                   \| $/x
                    or die;
-               $vessels{$1}= {
-                   Shot => $2,
-                   Volume => $3,
-                   Mass => $4,
-               };
+               my $name= $1;
+               my $v= { Shot => $2, Volume => $3, Mass => $4 };
+               foreach my $vm (qw(Volume Mass)) { $v->{$vm} =~ s/,//g; }
+               $vessels{$name}= $v;
            });
        } elsif (m/^shot$/) {
            @ctx= (sub {