#!/usr/bin/perl -w use strict; use Data::Dumper; my @list= ("a".."c","DBIC","A".."C","DANCER","a".."c"); my @result; for (@list) { push @result,$_ if /DBIC/.. /DANCER/ and ! // } print Dumper \@result; # uses http://www.perlmonks.org/?node_id=525392 my @result2 = grep { (/DBIC/.. /DANCER/) =~ /^\d+(?