# Without disjunctions sub indexany { -1 != index $_, $_[0] and return 1 for @_[1 .. $#_]; return 0 } @newArray = grep indexany($_, @searchCriteria), @largeArray # With disjunctions $searchCriteria = any( @searchCriteria); @newArray = grep -1 != index($_, $searchCriteria), @largeArray;