株式会社エスロジカル
株式会社エスロジカル
セキュリティ、Web開発、Unix開発、Go言語

■ Perl:CSV等区切り文字で連結されたデータを操作(joinとsplit)

技術ドキュメント目次 -> Perl -> CSV等区切り文字で連結されたデータを操作(joinとsplit)

本技術ドキュメントは、ここしばらくメンテナンスをしておりません。
内容が古くなっている可能性などございますこと、ご理解を頂けますようお願いいたします。


サイフにやさしいSSL証明書
【低価格SSL証明書】弊社運営の低価格SSL証明書販売サイト、翌月末払いなど請求書払いも可能。


◆ joinとsplitとは

join 関数は、
配列の各要素を指定された文字列で区切りながら結合した文字列を返す関数で、
split 関数はその逆で、
文字列を指定された文字列で分割した配列を返す関数になります。

どちらの関数もCSV(カンマ区切りテキスト)など特定の文字列で区切られた
データをを解析したり、作成したりするときに便利でよく使用されます。

join関数の構文は次のとおりです。

join EXPR, LIST


また、split関数の構文は次のとおりです。

split /PATTERN/, [EXPR, [LIMIT]] 

※LIMIT は分割数の上限値で、
EXPR は分割対象になる文字列の指定です。EXPR を省略すると $_ が使用されます。


◆ joinの使用例

join の使用例としては、
例えば次のようなサンプルコードを用意して、

my @list = ('Taro', 'Jiro', 'Saburo');
my $str  = join(',', @list);

print $str . "\n";


それを実行すると次のような出力が行われます。

$ perl test.pl
Taro,Jiro,Saburo
$


◆ splitの使用例

また、split の使用例としては、
例えば次のようなサンプルコードを用意して、

my $str  = "Taro,Jiro,Saburo";
my @list = split(/,/, $str);

for my $val (@list) {
        print "$val" . "\n";
}


それを実行すると次のような出力が行われます。

$ perl test.pl
Taro
Jiro
Saburo
$


また、
LIMIT(分割数の上限値)を指定して次のようなコードを用意すると、

my $str  = "Taro,Jiro,Saburo";
my @list = split(/,/, $str, 2);

for my $val (@list) {
        print "$val" . "\n";
}


次のような出力が行われます。

$ perl test.pl
Taro
Jiro,Saburo
$




■ Perl についての他のドキュメント


■ 他のグループのドキュメント

Apache  /  Linux  /  FreeBSD  /  OpenSSL  /  Perl  /  HTTPプロトコル  /  Jakarta Tomcat  /  Java  /  NetBSD  /  Oracle  /  PostgreSQL  /  UNIX の C言語  /  UNIX のコマンド  /  Windows  /  bind  /  システム運用TIPS

アンケートにご協力をお願いいたします。

1. このドキュメントへの評価をご選択ください。
         

2. ご感想をお書きください。