#!/usr/bin/perl # https://perlmonks.org/?node_id=1225917 use strict; use warnings; $_ = ; my @titles = /\w+/g; my @positions; push @positions, $-[0] while /\w+/g; while( ) { /\S/ or last; for my $i (0 .. $#positions) { /^.{$positions[$i]}(\w+)/ and $titles[$i] .= " $1"; } } use Data::Dump 'dd'; dd \@titles; __DATA__ Name Company Work Home Work Name Address Phone Hours Number #### [ "Name", "Company Name", "Work Address", "Home Phone Number", "Work Hours", ]