diff options
-rwxr-xr-x | bin/dbris-m | 2 | ||||
-rw-r--r-- | lib/Travel/Status/DE/DBRIS/Journey.pm | 8 |
2 files changed, 9 insertions, 1 deletions
diff --git a/bin/dbris-m b/bin/dbris-m index e09f1b5..86f5016 100755 --- a/bin/dbris-m +++ b/bin/dbris-m @@ -388,7 +388,7 @@ elsif ( $opt{journey} ) { } printf( "%s %s am %s\n\n", - $trip->train, $trip->train_no, $trip->day->strftime('%d.%m.%Y') ); + $trip->type, $trip->train_no, $trip->day->strftime('%d.%m.%Y') ); for my $stop ( $trip->route ) { if ( $stop == $mark_stop ) { diff --git a/lib/Travel/Status/DE/DBRIS/Journey.pm b/lib/Travel/Status/DE/DBRIS/Journey.pm index ad3fad4..22cf7ff 100644 --- a/lib/Travel/Status/DE/DBRIS/Journey.pm +++ b/lib/Travel/Status/DE/DBRIS/Journey.pm @@ -42,6 +42,14 @@ sub new { ( $ref->{type}, $ref->{number} ) = split( qr{\s+}, $ref->{train} ); } + # For some trains, the train type also contains the train number like "MEX19161" + # If we can detect this, remove the number from the train type + if ( $ref->{train_no} and $ref->{type} + and $ref->{type} =~ qr{ (?<actualtype> [^\d]+ ) $ref->{train_no} $ }x ) + { + $ref->{type} = $+{actualtype}; + } + # The line number seems to be encoded in the trip ID if ( not defined $ref->{number} and $opt{id} =~ m{ [#] ZE [#] (?<line> [^#]+ ) [#] ZB [#] }x ) |