1

Perl では、これら 2 つのステートメントを 1 行にまとめるにはどうすればよいですか?

$str=~ s/=>/:/g;
$str=~ s/\$VAR1 = {//g;
4

2 に答える 2

4
$str =~ s/(=>|\$VAR = {)/$1 eq '=>' && ':'/ge;

ただし、実際には、ステートメントを組み合わせる非常にやむを得ない理由がない限り、コードをそのままにしておく方がよいでしょう。

于 2012-05-12T02:49:02.987 に答える
1

;「 」を「 」に変更するだけ,です。しかし、なぜでしょうか。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.
于 2012-05-12T07:58:04.180 に答える