use utf8; while( <> ) { chomp; my( $leader, $fields ) = m{\A (.*?) « \s* (.*?) \s* » \z}x; my @items = split( /\s+/, $fields ); say qq{$leader « }, join( q{,}, @items ), q{ »}; }