Win8 Strawberry 5.8.9.5 (32) Wed 06/09/2021 15:18:22 C:\@Work\Perl\monks >perl -Mstrict -Mwarnings use Data::Dump qw(dd); # my $line51 = 'foo'; for my $line51 ( '', "\n", 'foo', 'foo, bist_mode, bar', 'foo, bist_mode bar', ) { dd '$line51', $line51; my @result = grep (/bist_mode/, $line51); dd 'A', \@result; my $b = join("_",@result); dd 'B', $b; $b =~ s/,([^,]*$)/$1/; dd 'C', $b; print "\n"; } ^Z ("\$line51", "") ("A", []) ("B", "") ("C", "") ("\$line51", "\n") ("A", []) ("B", "") ("C", "") ("\$line51", "foo") ("A", []) ("B", "") ("C", "") ("\$line51", "foo, bist_mode, bar") ("A", ["foo, bist_mode, bar"]) ("B", "foo, bist_mode, bar") ("C", "foo, bist_mode bar") ("\$line51", "foo, bist_mode bar") ("A", ["foo, bist_mode bar"]) ("B", "foo, bist_mode bar") ("C", "foo bist_mode bar")