#!/usr/bin/perl -w use strict; my $nest = 0; while( my $line = <> ) { chomp $line; foreach my $c (unpack 'C*', $line) { $c = chr($c); if( $c eq '[' ) { $nest++; } if( $c eq ' ') { print $nest < 0 ? '_' : ' '; } else { print $nest < 9 ? $nest < 0 ? '-' : $nest : '9'; } if( $c eq ']' ) { $nest--; } } print "\n"; }