###前提・実現したいこと
perl初心者です。前回perlを使って特定行の取り出し、かつ数字のみを抜き出すプログラムについて投稿させて頂きました。そこでsplit関数の使い方について少し勉強したのですが、疑問が残りました。先ほど回答して頂いた方のコードを参考に、再投稿させて頂きます。
###発生している問題・エラーメッセージ
test.logを読み込み、test.plを実行し以下のような結果を得たいと思っています。
しかし、何も表示されません。
test.log Summary: Total number of files: 36 Added files: 0 Removed files: 0 Changed files: 1 Updata files: 1
test.pl
perl
1open my $FH, '<', "test.log" or die $!; 2 3while ( $data = <$FH> ) { 4 chomp $data; 5 my ( $name,$dummy, $number ) = split /\s+/, $data; 6 7 print "$number\n" 8 if ( $name eq 'Total' ) .. ( $name eq 'Changed' ); 9} 10 11close $FH;
(目的の結果)
36
0
0
1
###試したこと
my ( $name,$dummy, $number ) = split /\s+/, $data;
の部分において、Total number of files:の前にスペースが二つあるので、my ( $blank,$space,$name,$dummy, $number ) = split /\s+/, $data;
のように記述したのですが、上手くいかず...
split関数において、空白の扱いがよくわかりません。
ご存じの方がいらっしゃいましたら、教えて頂きたいと思います。
よろしくお願いします。

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/11/24 03:53