#!/usr/bin/perl use strict; use warnings; my $in = 'srd^1|name|mail@mail.com^dsff'; my @out1 = split(/\^/, $in); my @out2 = split(/\|/, $out1[1]); print $out2[0] . " " . $out2[1] . " " . $out2[2];