Perl では、これら 2 つのステートメントを 1 行にまとめるにはどうすればよいですか?
$str=~ s/=>/:/g;
$str=~ s/\$VAR1 = {//g;
$str =~ s/(=>|\$VAR = {)/$1 eq '=>' && ':'/ge;
ただし、実際には、ステートメントを組み合わせる非常にやむを得ない理由がない限り、コードをそのままにしておく方がよいでしょう。
;
「 」を「 」に変更するだけ,
です。しかし、なぜでしょうか。2 つのステートメントを組み合わせることは目的ではなく、手段です。目標を教えていただければ、より適切な回答が得られます。
$str=~ s/=>/:/g, $str=~ s/\$VAR1 = {//g;
他の方法:
do { $str=~ s/=>/:/g; $str=~ s/\$VAR1 = {//g; };
s/=>/:/g, s/\$VAR1 = {//g for $str;
$str = $str =~ s/=>/:/gr =~ s/\$VAR1 = {//gr; # 5.14+ required.