Perl: タブ区切りのデータを処理する方法
Perlで、タブで区切られたデータを処理する方法をメモっておく。
用途としては、さまざまであると思う。タブで区切ると、エディタで開いたときに見やすいというメリットがある。
手順
手順の概要は以下の通りである。
1.データファイルを作成する
タブで区切ったデータファイルを作成する。テキストエディタで作成してもよいし、専用のプログラムを書いて作成しても良い。以下は、データファイルの例である。
Taro 24 man Hanako 23 waman
2.ファイルを読み込み、処理する
ファイルを作成したら、あとはファイルを読み込んで処理するだけである。ポイントは、split関数を使って、データを区切ることである。以下に、サンプルプログラムを示す。
#!/usr/bin/perl
# データファイルをオープンする
open(IN, "data.txt");
# データファイルから1行ずつ読み込み処理する
while(<IN>){
chop;
($name, $old, $sex) = split(/\t+/,$_);
print "名前:$name, 年齢:$old, 性別:$sex\n";
}
# データファイルをクローズする
close(IN);
split(/\t+/,$_) で、データファイルから読み込んだデータをタブで区切っている。そして、各変数($name, $old, $sex) に値を代入している。また、chop関数は、おまじないのようなもので、行の最後の文字(改行)を取り除いている。
また、タブと空白の両方を区切りで使用したい場合には、
split(/\s+/,$_)
とすればよい。
トラックバック(0)
このブログ記事に対するトラックバックURL: http://itsmemo.com/mt/mt-tb.cgi/48
※スパム防止のため、管理人がトラックバック内容確認後、公開されます。
コメントする