my $url = [ 2, "/home/user/sym_dir/%s_2013 'http://www.downloadsite.com/%s.dat'" ]; get_symbol_data($url); sub get_symbol_data { my ($base_url) = @_; my ($repeats, $fmt_string) = @$base_url; my @sym_array = ('foo', 'bar', 'baz'); for my $symbol (@sym_array) { my $url = sprintf($fmt_string, ( $symbol ) x $repeats); print $url, "\n"; } }