>perl -wMstrict -le "my $data = 'A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z'; ;; my @ra = split m{ (?: , [^,]+){5} \K , }xms, $data; ;; printf qq{'$_' } for @ra; " 'A,B,C,D,E,F' 'G,H,I,J,K,L' 'M,N,O,P,Q,R' 'S,T,U,V,W,X' 'Y,Z' #### >perl -wMstrict -le "my $data = 'A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z'; ;; my @ra = split m{ (?: , [^,]+){4} \K , }xms, $data; ;; printf qq{'$_' } for @ra; " 'A,B,C,D,E' 'F,G,H,I,J' 'K,L,M,N,O' 'P,Q,R,S,T' 'U,V,W,X,Y' 'Z'