2

"8.53"結果の文字列が欲しい文字列が1つ あります"853" 次のコードを試しました

tr|.||;

しかし、それはその与えること8.53だけを置き換えるものではありません。私は別の方法を使用してみました

tr|.|NULL|;

しかし、それを与える8N53ことで、trを使用して文字をNULLに置き換える方法を教えてください。

ありがとう

4

2 に答える 2

16

d対応する文字がない文字を削除するには、修飾子を指定する必要があります。

tr/.//d;

または、(低速ですがより使い慣れた)置換演算子を使用できます。

s/\.//g;
于 2013-03-22T07:45:47.927 に答える
7

trこれは、1番目のリストの文字を2番目のリストの対応する文字(最初の文字であるため、例に含まれています)で文字変換するため、必要ありませんN。置換演算子が必要になります。

my $var = "8.53";
$var =~ s/\.//;
print $var;

g置き換えるインスタンスが複数ある場合は、フラグを追加します( s/\.//g)。

于 2013-03-22T07:26:59.103 に答える