Text Formatting and Date Strings
Join Templates
Join fixed text fields with a selected separator.
join-templates
`join` creates predictable text from ordered fields.
Join Templates
join_templates.pl
Replay: real traced execution (multi-file project)
use strict;
use warnings;
my $style = "dash";
my $separator = "-";
if ($style eq "slash") {
$separator = "/";
} elsif ($style eq "colon") {
$separator = ":";
}
my $year = "2026";
my $month = "04";
my $day = "15";
my $date = join($separator, $year, $month, $day);
print "style=$style\n";
print "separator=$separator\n";
print "date=$date\n";
use strict;
use warnings;
my $style = "slash";
my $separator = "-";
if ($style eq "slash") {
$separator = "/";
} elsif ($style eq "colon") {
$separator = ":";
}
my $year = "2026";
my $month = "04";
my $day = "15";
my $date = join($separator, $year, $month, $day);
print "style=$style\n";
print "separator=$separator\n";
print "date=$date\n";
use strict;
use warnings;
my $style = "colon";
my $separator = "-";
if ($style eq "slash") {
$separator = "/";
} elsif ($style eq "colon") {
$separator = ":";
}
my $year = "2026";
my $month = "04";
my $day = "15";
my $date = join($separator, $year, $month, $day);
print "style=$style\n";
print "separator=$separator\n";
print "date=$date\n";
$style ← dash, $separator ← -, $year ← 2026, $month ← 04, $day ← 15
4my $style→ dash = "dash"; #@style="slash", "colon"5my $separator→ - = "-";6if ($style eq "slash") {7 $separator = "/";8} elsif ($style eq "colon") {9 $separator = ":";10}11my $year→ 2026 = "2026";12my $month→ 04 = "04";13my $day→ 15 = "15";14my $date→ 2026-04-15 = join($separator-, $year2026, $month04, $day15);1516print "style=$styledash\n";17print "separator=$separator-\n";18print "date=$date2026-04-15\n";outputstyle=dash separator=- date=2026-04-15
$style ← slash, $separator ← -
4my $style→ slash = "slash";5my $separator→ - = "-";6if ($style eq "slash") {$separator ← /
5my $separator = "-";6if ($styleslash eq "slash") {7 $separator→ / = "/";8} elsif ($style eq "colon") {$year ← 2026, $month ← 04, $day ← 15, $date ← 2026/04/15
10}11my $year→ 2026 = "2026";12my $month→ 04 = "04";13my $day→ 15 = "15";14my $date→ 2026/04/15 = join($separator/, $year2026, $month04, $day15);1516print "style=$styleslash\n";17print "separator=$separator/\n";18print "date=$date2026/04/15\n";outputstyle=slash separator=/ date=2026/04/15
$style ← colon, $separator ← -
4my $style→ colon = "colon";5my $separator→ - = "-";6if ($style eq "slash") {$separator ← :
7 $separator = "/";8} elsif ($stylecolon eq "colon") {9 $separator→ : = ":";10}$year ← 2026, $month ← 04, $day ← 15, $date ← 2026:04:15
10}11my $year→ 2026 = "2026";12my $month→ 04 = "04";13my $day→ 15 = "15";14my $date→ 2026:04:15 = join($separator:, $year2026, $month04, $day15);1516print "style=$stylecolon\n";17print "separator=$separator:\n";18print "date=$date2026:04:15\n";outputstyle=colon separator=: date=2026:04:15