挿入しようとしている文字が既に先行していない限り、別の特定の文字の前に文字を追加しようとしています。これは問題なく動作します (Z の前に n が既にある場合を除き、Z の前に n を挿入します)。
s/([^n])Z/$1nZ/g;
前に何もない単語境界を除いて。だから私が試したことを修正するために:
s/([\b^n])Z/$1nZ/g; # does not work
s/(\b|[^n])Z/$1nZ/g; # does work
#1 が機能しなかったのはなぜですか? スジは通ってるようだ?