open (my $file, '<', 'data.bin'); binmode $file; my $binary_data = <$file>; $binary_data =~ /(.)(.){$1}/; # how can I do something like that? #or better yet $binary_data =~ /(.)(.){(?{unpack 'H*', $1})}/; # ? # or may be /(.)(?{unpack 'H*', $1})(.){$^R}/; # ???