Rob Dixon wrote: > Steve Bertrand wrote: >> Can someone explain to me how I can fix this up to achieve my desired >> results? >> >> my $time = (split (/:/, (grep (/^info/, @contents))))[0]; >> >> A sample snip of data: >> >> this382:3828 >> info447:4729 >> that274:9294 >> >> ...and I just want the $time to become info447. >> >> The way I think it works is: >> >> - grep out the single entry from the @contents array >> - split that entry on the : delimiter >> - insert into $time the first element of the split >> >> I can do it with more than one line, but I've become accustomed to using >> split in array fashion, however, never with grep before. > > my ($time) = grep /^info/, map /([^:]*)/, @contents; No need for grep(): my ($time) = map /^(info[^:]*)/, @contents; John -- Perl isn't a toolbox, but a small machine shop where you can special-order certain sorts of tools at low cost and in short order. -- Larry WallThread Previous | Thread Next