>perl -wMstrict -le "my $s = qq{abandon/to\t(a road)\t}; $s =~ s{ ([^\t]*) \t ([^\t]*) \1 ([^\t]*) \t }{\t$2$1$3\t}xms; print qq{1 '$1' 2 '$2' 3 '$3'}; print qq{'$s'}; " 1 'o' 2 '(a r' 3 'ad)' 'abandon/t (a road) '