A few issues on the regex: 1. Dot "." has special meaning, so escape it. Without the escape, it means "Match any single character with the exception of a new line character."
2. The filename may contain more than one dot, so tell the regex if the file contains one or more dots, we'll skip it and just print the "undotted" filenames. 3. Are you sure you want to skip all files with dots in the name? That would skip files like "index.html" and "data.txt". If you just want to skip the ones that start with a dot, use ^ just like you did. #!/usr/bin/perl -w use strict; my $start_dir = $ARGV[0] || "."; use File::Find; print "Temp file list:\n"; find sub { return unless -f; my $file=$File::Find::name; unless( $_ =~ /[\.]+/) { print "$file\n"; } }, $start_dir;
BEGIN:VCARD VERSION:2.1 N:Robnett;Scot FN:Scot Robnett ORG:inSite Internet Solutions NOTE;ENCODING=QUOTED-PRINTABLE:Low cost web hosting, 50 MB disk space, easy and intuitive browser-based pag= e builder and control panel, 2000 product shopping cart, contact management,= site promotion, and free tech support:=0D=0A=0D=0A http://www.mawebcenters.= com/insite2000 TEL;WORK;VOICE:(815) 206-2907 TEL;CELL;VOICE:(815) 790-9687 ADR;WORK;ENCODING=QUOTED-PRINTABLE:;;Square West Center=0D=0A454 W. Jackson St.;Woodstock;IL;60098;United State= s of America LABEL;WORK;ENCODING=QUOTED-PRINTABLE:Square West Center=0D=0A454 W. Jackson St.=0D=0AWoodstock, IL 60098=0D=0AUni= ted States of America URL;HOME:http://www.insiteful.tv URL;WORK:http://www.insiteful.tv EMAIL;PREF;INTERNET:[EMAIL PROTECTED] EMAIL;INTERNET:[EMAIL PROTECTED] EMAIL;INTERNET:[EMAIL PROTECTED] REV:20030223T194915Z END:VCARD