say unpack 'aaaaa@0aa', 'ABCDEFGH'; # prints ABCDEAB
####
say unpack 'aa(aaa@0)aa', 'ABCDEFGH'; # prints ABCDECD
##
##
say unpack 'aa(aaa@)aa', 'ABCDEFGH'; # prints ABCDEDE
say unpack 'aa(aaa@1)aa', 'ABCDEFGH'; # prints ABCDEDE
##
##
say unpack '(C/xa@)3', "\003\003\003abcdef"; # prints 'bcd'
##
##
say unpack 'aa.', 'ABCDEFGH'; # prints AB2
say unpack 'aaaa.', 'ABCDEFGH'; # prints ABCD4
##
##
say unpack 'aa./xaa', 'ABCDEFGH'; # prints ABEF
##
##
say unpack 'aa.aa', 'ABCDEFGH'; # prints AB2CD
say unpack 'a(a.a)a', 'ABCDEFGH'; # prints AB1CD
say unpack 'a(a.*a)a', 'ABCDEFGH'; # prints AB2CD
##
##
say unpack 'aa(aa).*/Xaa', 'ABCDEFGH'; # prints ABCDAB
say unpack 'aa(aa.*/Xaa)', 'ABCDEFGH'; # prints ABCDAB