関数順 インデックス
目的別 インデックス

構文
 
 tr/検索文字列/置き換え文字列/オプション
オプション c 検索文字列に含まれない文字を探します。
d 検索文字列に対応する置き換え文字列が無い場合にその文字を削除します。
s 置き換えた結果,同じ文字が連続した場合に連続したものを1文字にします。

返り値
 
 検索文字列にマッチした文字数

説明

  • 検索文字列に含まれる文字を,対応する置き換え文字列に変換します。
  • y///を使っても同じことができます。

使用例

変数$strの文字のうち123をそれぞれABCに置換する
#!/usr/bin/perl
use strict;
use warnings;

my $str = '1a2b3c4d';

# 1→A 2→B 3→C に置換する
$str =~ tr/123/ABC/; 
print $str, "\n"; # AaBbCc4d
変数$strの小文字を大文字に置換する
#!/usr/bin/perl
use strict;
use warnings;

my $str = "Let's enjoy Perl!";
$str =~ tr/a-z/A-Z/;

print $str, "\n"; # LET'S ENJOY PERL!
変数$strのアルファベットの数を数える
#!/usr/bin/perl
use strict;
use warnings;

my $str = "Let's enjoy Perl!";
my $count = ($str =~ tr/a-zA-Z//);

print $count, "\n"; # 13
変数$strアルファベット以外の数を数える
#!/usr/bin/perl
use strict;
use warnings;

my $str = "Let's enjoy Perl!";
my $count = ($str =~ tr/a-zA-Z//c); 
# OPTIONにcを指定

print $count, "\n"; # 4
変数$strアルファベットを削除する
#!/usr/bin/perl
use strict;
use warnings;

my $str = "Let's enjoy Perl!";
$str =~ tr/a-zA-Z//d;
# OPTIONにdを指定

print $str, "\n"; # '  !
変数$str連続した空白を一つにする
#!/usr/bin/perl
use strict;
use warnings;

my $str = "Let's    enjoy    Perl!";
$str =~ tr/ //s;
# OPTIONにsを指定

print $str, "\n"; # Let's enjoy Perl!