0

「eAlpha eBeta eGamma」を「fAlpha fBeta fGamma」に変換したいと考えています。もちろん、これはより複雑な置換の単純化された例にすぎません。

これが私のperlプログラムです:

my $data= "eAlpha eBeta eGamma";
$data=~ s/(e)(Alpha)|(e)(Beta)|(e)(Gamma)/f$2/g;
say $data;

出力は

fAlpha f f

Perl 正規表現は $1 を覚えているようですが、$2 は覚えていません。正規表現の代替、グローバル置換、および $1、$2 などの変数のキャプチャを使用する方法はありますか?

  • 代替案が 3 つを超えることはないので、3 つのステップで実行できますが、実行したくありません。

どんな助けでも大歓迎です。

4

2 に答える 2