8.5 轉換

轉換可以做字元的變換或刪除字元的動作。

語法如下:


tr/字元集/欲轉換的字元集/
y/字元集/欲轉換的字元集/

可再加上修飾子:c d s

d 刪除字元
c 將不在指定字元集中的字元(包括換行字元),換成欲轉換的字元集
s 將重覆字元刪除

用例 1:小寫換成大寫


$text =~ tr/a-z/A-Z/;

用例 2:刪除空白字元


$text="1 abc 23 PID";

$text =~ tr/ //d;

print $text, "\n\n";

輸出:

1abc23PID

用例 3:壓縮重覆的字元 (使用修飾子 s)


$text = 'goodyesMMMllnnnn';
$text =~ tr/a-zA-Z//s;

print $text; 

# 輸出結果:

godyesMln

重覆的字元只剩一個。

用例 4:修飾子 c


$text="1 abc 23 PID";

$text =~ tr/[0-9]/*/c;  # 將非數字字元換成 * 號

print $text, "\n\n";

輸出:

1*****23****