I am trying to confirm syntax on a particular config file. The code below populates the template, using values from the last iteration through %vars.
Thanks again, Steve
#!/usr/bin/perl -w use strict; use Text::Template; my %vars; my $lines; while ($lines = <DATA>) { next if ($lines =~ /^\#/); if ($lines =~ /(\d+)(\s+)map(\s+)(\w+)\:\/\/(.*?)(\4)\:\/\/(.*$)/){ $vars{'proto'} = $4; $vars{'uri1'} = $5; $vars{'uri2'} = $7; } } my $result = $template->fill_in(HASH => \%vars); if (defined $result) { print $result } else { die "Couldn't fill in template: $Text::Template::ERROR" } __DATA__ 1 map http://www.digitalcity.com http://origin-www.digitalcity.com 2 map tunnel://www.digitalcity.com tunnel://origin-www.digitalcity.com 3 map http://10.0.2.1 http://origin-www.digitalcity.com 4 map tunnel://10.0.2.1 tunnel://origin-www.digitalcity.com 5 reverse_map http://origin-www.digitalcity.com http://www.digitalcity +.com 6 reverse_map tunnel://origin-www.digitalcity.com tunnel://www.digital +city.com ========================================== TEMPLATE: {$d} map {$proto}://{$uri1} {$proto}://{$uri2} {$d} map {$proto}://{$uri1} {$proto}://{$uri2} {$d} map {$proto}://{$uri1} {$proto}://{$uri2} {$d} map {$proto}://{$uri1} {$proto}://{$uri2} {$d} reverse_map {$proto}://{$uri2}://{$proto}://{$uri1} {$d} reverse_map {$proto}://{$uri2} {$proto}://{$uri1}
In reply to Text::Template iteration problem by Tuna
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |