for(my $id=0;$id < keys %hfields;$id++){ if(query_parameters->get("columns[$id][searchable]") eq 'true' && defined query_parameters->get("columns[$id][search][value]") && query_parameters->get("columns[$id][search][value]") ne ''){ push @{$serchstrx{'$and'}},'{"'. query_parameters->get("columns[$id][data]") . '" => qr/' . query_parameters->get("columns[$id][search][value]").'/i}'; } }