Text Formatting and Date Strings
Parse Date Parts
Split an ISO-style date string into scalar parts.
parse-date-parts
Parsing fixed text into parts keeps later formatting explicit.
Parse Date Parts
parse_date_parts.pl
Replay: real traced execution (multi-file project)
use strict;
use warnings;
my $date = "2026-04-15";
my ($year, $month, $day) = split /-/, $date;
my $summary = "$day/$month/$year";
print "date=$date\n";
print "year=$year\n";
print "month=$month\n";
print "summary=$summary\n";
use strict;
use warnings;
my $date = "2025-01-03";
my ($year, $month, $day) = split /-/, $date;
my $summary = "$day/$month/$year";
print "date=$date\n";
print "year=$year\n";
print "month=$month\n";
print "summary=$summary\n";
use strict;
use warnings;
my $date = "2027-12-20";
my ($year, $month, $day) = split /-/, $date;
my $summary = "$day/$month/$year";
print "date=$date\n";
print "year=$year\n";
print "month=$month\n";
print "summary=$summary\n";
$date ← 2026-04-15, $year ← 2026, $month ← 04, $day ← 15, $summary ← 15/04/2026
4my $date→ 2026-04-15 = "2026-04-15"; #@date="2025-01-03", "2027-12-20"5my ($year→ 2026, $month→ 04, $day→ 15) = split /-/, $date2026-04-15;6my $summary→ 15/04/2026 = "$day15/$month04/$year2026";78print "date=$date2026-04-15\n";9print "year=$year2026\n";10print "month=$month04\n";11print "summary=$summary15/04/2026\n";outputdate=2026-04-15 year=2026 month=04 summary=15/04/2026
$date ← 2025-01-03, $year ← 2025, $month ← 01, $day ← 03, $summary ← 03/01/2025
4my $date→ 2025-01-03 = "2025-01-03";5my ($year→ 2025, $month→ 01, $day→ 03) = split /-/, $date2025-01-03;6my $summary→ 03/01/2025 = "$day03/$month01/$year2025";78print "date=$date2025-01-03\n";9print "year=$year2025\n";10print "month=$month01\n";11print "summary=$summary03/01/2025\n";outputdate=2025-01-03 year=2025 month=01 summary=03/01/2025
$date ← 2027-12-20, $year ← 2027, $month ← 12, $day ← 20, $summary ← 20/12/2027
4my $date→ 2027-12-20 = "2027-12-20";5my ($year→ 2027, $month→ 12, $day→ 20) = split /-/, $date2027-12-20;6my $summary→ 20/12/2027 = "$day20/$month12/$year2027";78print "date=$date2027-12-20\n";9print "year=$year2027\n";10print "month=$month12\n";11print "summary=$summary20/12/2027\n";outputdate=2027-12-20 year=2027 month=12 summary=20/12/2027