diff --git a/bin/db-ris b/bin/db-ris index 80d3d0fb628ab126890ac3311b9302cf04da93f7..851483165b933859becbe86606182e97d5510f16 100755 --- a/bin/db-ris +++ b/bin/db-ris @@ -6,16 +6,19 @@ use 5.010; our $VERSION = '0.0'; use Getopt::Long; +use List::Util qw(first); use Travel::Status::DE::DeutscheBahn; my ( $date, $time ); my $types = q{}; my %train_type; +my $filter_via; binmode( STDOUT, ':encoding(utf-8)' ); GetOptions( 'd|date=s' => \$date, + 'v|via=s' => \$filter_via, 'm|mot=s' => \$types, 't|time=s' => \$time, ); @@ -42,6 +45,10 @@ for my $d ( $status->departures() ) { @via = $d->route; + if ( $filter_via and not( first { $_ =~ m{$filter_via}io } @via ) ) { + next; + } + for my $stop (@via) { if ( $stop =~ m{ ?Hbf} ) { push( @via_main, $stop );