#!/usr/bin/perl -w use strict; my @a = qw(bob.txt bob jack.bmp dave.txt mark); my @b = grep{$_=(m|^(.*)\.(.*?)$|)?$1:$_}@a; print join(', ',@a)."\n".join(', ',@b);