2つの文字列変数が必要になることがあります.2つ目の文字列変数の値は、最初の文字置換によって得られます。置換によって別の文字列変数を定義していますか?
以下に示すより簡潔な方法がありますか?最初から2番目VARを定義するための2つの別々のコマンドを取ることは、バグが発生しやすいと面倒です:
# Example: "pstopdf" and "ps2pdf":
my $name1 = "pstopdf";
my $name2 = $name1;
$name2 =~ s/to/2/;
2つの文字列変数が必要になることがあります.2つ目の文字列変数の値は、最初の文字置換によって得られます。置換によって別の文字列変数を定義していますか?
以下に示すより簡潔な方法がありますか?最初から2番目VARを定義するための2つの別々のコマンドを取ることは、バグが発生しやすいと面倒です:
# Example: "pstopdf" and "ps2pdf":
my $name1 = "pstopdf";
my $name2 = $name1;
$name2 =~ s/to/2/;
(my $name2 = $name1) =~ s/to/2/;
new features in Perl 5.14の一つは、あなたがmap
に変換のこの種を行っている場合に便利ですnon-destructive substitution with the /r flag: s///rあります、 例えば。
/r
フラグを使用して、の
my $name2 = $name1 =~ s/to/2/r;
可能重複記述します[Perlの:/(置き換え)を使用するのが、新しい文字列を返す](http://stackoverflow.com/questions/3440363/perlを-use-s-replace-new-string) – daxim
@daxim:それは全く別の質問です。 – Flimzy