use strict; use warnings; open my $in, '<', '1.txt' or die "Cannot open 1.txt: $!"; while (my $file = <$in>) { $file =~ s/..![^!]*something.*\.c//; print $file; } close $in;