『初めてのPerl』第9章 正規表現によるテキスト処理

大文字と小文字の変換:
#!/usr/bin/env perl
use v5.12;
use warnings;

$_ = "I saw Barney with Fred.";

# 文字列全体を大文字・小文字にしたいときは、uc又はlcを使う
say uc; # I SAW BARNEY WITH FRED.
say lc; # i saw barney with fred

# 一部分だけを大文字・小文字にしたいときは、正規表現の置換で\U又は\Lを使う
s/(fred|barney)/\U$1/gi && say; # I saw BARNEY with FRED.
s/(fred|barney)/\L$1/gi && say; # I saw barney with fred.

# 一文字目だけを大文字・小文字にしたいときは、正規表現の置換で\u又は\lを使う
s/(fred|barney)/\u$1/gi && say; # I saw Barney with Fred.
split演算子(指定したパターンにしたがって文字列を分割):
#!/usr/bin/env perl
use v5.12;
use warnings;

my @fields = split /:/, "abc:def:g:h"; # ("abc", "def", "g", "h")
join関数(ばらばらの文字列を接着して一つの文字列にする):
#!/usr/bin/env perl
use v5.12;
use warnings;

$_ = join ":", 4, 6, 8, 10, 12;
say; # 4:6:8:10:12
m//をリストコンテキストで使う:
#!/usr/bin/env perl
use v5.12;
use warnings;

$_ = "Hello there, neighbor!";

# m//をリストコンテキストで使うと、マッチによって作られたキャプチャ変数のリストを返す
my($first, $second, $third) = /(\S+) (\S+), (\S+)/;
say "$second is my $third"; # there is my neighbor!
特殊変数$^I(指定した拡張子のバックアップを作成):
#!/usr/bin/env perl
use v5.12;
use warnings;

$^I = ".bak"; # 指定したファイル名.bak という名前のバックアップファイルを作成する

while (<>) {
    // 開いたファイルに対して何か処理をする
}