dポイントプレゼントキャンペーン実施中!

こんにちは。
perl勉強二日目の初心者です。

タブで区切られているデータを一行ずつ読み込んで
処理を行うとき、
一行にタブが何個入っているのか検索したいのですが、
ソースの書き方が分かりません。

どうか、御存知の方は教えてください。

※読み込んでいる配列の長さは10ですが、
たまに途中で1つ、4つの物も混じっていて
エラーの処理をしたいです。

A 回答 (3件)

tr で数えればいいんじゃないかなぁ.

    • good
    • 0

えぇと, 単に「tr で数える」だけなら


tr/\t//
で OK ですぜ>#2.
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
大変参考になりました。

お礼日時:2009/01/20 09:53

テストスクリプト



#!/perl/bin/perl

@text = (
"a\tb\tc\td\te\tf\tg\th\ti\tj"
,"1\t2\t3\t4"
,"あ\tいい\tううう\tええええ\tおおおおお\t"
);

foreach (@text) {
# \t を数える
print 'tr:';
print tr/\t/\t/;
print "\n";

# \t で分割した要素数を数える
print 'scalar:';
(@cnt) = split(/\t/);
print scalar(@cnt);
print "\n";

# \t で分割した要素数の添え字を表示する
print '$#:';
print $#cnt;
print "\n";
}
    • good
    • 1
この回答へのお礼

回答ありがとうございます。
色々な方法がありますね。大変勉強になりました。

お礼日時:2009/01/20 09:56

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!