if($action eq '!='){ $match{$a} = 0 if $line[$position]=~m/\Q$key/i; } else{$match{$a} = 1 if $line[$position]=~m/\Q$key/i;} #### Can be rewritten like so: $match{$a} = ($line[$position] =~ m/\b\Q$key\E\b/i) ? 1 : 0; $match{$a} = !$match{$a} if $action eq '!='; #### if($action eq '!='){ $match{$a} = ($line[$position] =~ m/\b\Q$key\E\b/i) ? 1 : 0; } else{$match{$a} = !$match{$a} if $action eq '!=';}