#!/usr/bin/perl use strict; use warnings; my $string = 'foo-bar-hutzel-putzel'; foreach(0..7){ my $copy = $string; map{$_ == 1 ? $copy =~ s/-// : $copy =~ s/-/'/} split//,sprintf "%03b",$_; $copy =~ s/'/-/g; print "$copy\n"; }