Help for this page
my @words = split ' ', $line; my @boy_idxs = grep $words[$_] eq 'boy', 0..$#words; $words[$boy_idxs[rand(@boy_idxs)]] = 'man'; $line = join ' ', @words;
my @boy_idxs; push @boy_idxs, $-[0] while $line =~ /\b boy \b/xg; substr($line, $boy_idxs[rand(@boy_idxs)], length('boy')) = 'man';