如您所见,我想在$enkel
中存储第一次替换的结果。我在$enkel
的印刷品中使用此if
。
但是当我想在$enkel
打印中使用此elsif
时,它没有任何价值。我实际上想在$dubbel
打印中同时使用$enkel
和elsif
。
有没有办法使Perl永久地将它存储在$dubbel
中,以便它可以用于其他打印?
if ($inputwoord =~ /((aa|uu|ee|oo)[^aeiour])$/) {
($enkel = $inputwoord) =~ s/([aueo])\1/$1/g;
print "$enkel$buig\n$inputwoord$gen\n$enkel$comp\n$enkel$compe\n$inputwoord$sup\n$inputwoord$supe\n";
}
elsif ($inputwoord =~ /[^aeiou][aeiou]([pktgnmlf])$/) {
($dubbel = $inputwoord) =~ s /([pktgnmlf]$)/$1$1/g;
print "$dubbel$buig\n$inputwoord$gen\n$dubbel$comp\n$dubbel$compe\n$inputwoord$sup\n$inputwoord$supe\n";
} # consonantgeminatie
答案 0 :(得分:1)
如果要在$enkel
和if
条款中使用if
语句,则必须在elsif
语句之外计算($enkel = $inputwoord) =~ s/([aueo])\1/$1/g;
($dubbel = $inputwoord) =~ s/([pktgnmlf]$)/$1$1/g;
if ($inputwoord =~ /((aa|uu|ee|oo)[^aeiour])$/) {
print "$enkel$buig\n$inputwoord$gen\n$enkel$comp\n$enkel$compe\n$inputwoord$sup\n$inputwoord$supe\n";
}
elsif ($inputwoord =~ /[^aeiou][aeiou]([pktgnmlf])$/) {
print "$dubbel$buig\n$inputwoord$gen\n$dubbel$comp\n$dubbel$compe\n$inputwoord$sup\n$inputwoord$supe\n";
} # consonantgeminatie
的值。喜欢这个
{{1}}