$shellstring = '-v -in src_alignment.fasta '; foreach my $key (keys(%{$param})) { CASE: { if ($key eq 'groups') { $shellstring .= '-groups "'.$param->{'groups'}.'" '; last CASE; } if ($key eq 'ngra') { $shellstring .= '-ngra '; last CASE; } if ($key eq 'gh') { $shellstring .= '-gh '.$param->{'gh'}.' '; last CASE; } if ($key eq 'sa') { unless ($param->{'ca'}) { $shellstring .= '-sa '; } # '-ca' overrides '-sa' last CASE; } if ($key eq 'ca') { $shellstring .= '-ca '; last CASE; } if ($key eq 'cg') { $shellstring .= '-cg '; last CASE; } } }