in reply to Matching hyphens in file path to extract zip code
just want to ask if there is a better way of doing this
That depends on what makes one solution "better" than another and also how representative your sample set is.
use strict; use warnings; use Test::More; my @set = ( { file => '-/yf/-/22211_01_09_2000_XYz.pdf', zip => '22211' }, { file => '_/gt/-/02239_04_04_1989_PkW.pdf', zip => '02239' }, { file => '-/xy/-/02239_04_04_1989_PkW.pdf', zip => '02239' }, ); plan tests => 2 * @set; for my $datum (@set) { is zip_substr ($datum->{file}), $datum->{zip}, "Substr for $datum- +>{file}"; is zip_regex ($datum->{file}), $datum->{zip}, "Regex for $datum- +>{file}"; } sub zip_substr { return substr (shift, 7, 5); } sub zip_regex { my ($zip) = shift =~ m#/(\d{5})_#a; return $zip; }
|
|---|