Perl初心者スレ(マジレス回答) (523レス)
前次1-
抽出解除 レス栞

146: デフォルトの名無しさん [sage] 2013/01/23(水)01:52:30.08
>>145
ワンライナー
182
(1): デフォルトの名無しさん [sage] 2014/02/02(日)07:25:47.08
>>179
あるよ
299: デフォルトの名無しさん [sage] 2014/06/11(水)22:22:53.08 ID:PCU6+AOL(1)
どこにshiftの出番があるのか?と思ったらそう言うことか。
普通に配列に突っ込んで、マイナスのインデクスでアクセスすりゃいいやん。
$ perl -Mvars=@a -lne 'push @a, $_ ; next if !/dog/ ; next if $a[-3] !~ /市民/ ; print $a[-3]' File
メモリ喰いが気になるのなら、
$ perl -Mvars=%h -lne '$h{$.} = $_ if /市民/ ; next if !/dog/ ; next if ! defined $h{$. - 2} ; print $h{$. - 2}' File
とか、で節約すりゃいい。、、、けど、今時そんなの気にする必要もないだろ

上のワンライナーでやってる事は、
$ perl -MO=Deparse -Mvars...略
でわかる。
357: デフォルトの名無しさん [sage] 2015/03/13(金)20:55:35.08 ID:hJWhu2F/(1)
なにこの良スレ
376: デフォルトの名無しさん [] 2015/08/31(月)13:20:01.08 ID:Q0xjlAqa(1/2)
Lisper な人?
多分、こういうことをお望みかな。

#!/usr/bin/perl

use Data::Dumper;

my @car = (1, 2);
my @cdr = (3, 4);
my @both = ( \@car, \@cdr);
print( Dumper( \@both));
470: デフォルトの名無しさん [sage] 2018/11/22(木)10:54:51.08 ID:iCX1SQ90(2/2)
これでいけました!
foreach my $row (keys %table){
 print encode('cp932', "$table{$row}{'id'}\t$table{$row}{'count'}\t$table{$row}{'name'}\n");
}
>hash_test.pl
1 10 テスト1
2 5 テスト2
読込完了
1 10 テスト1
2 5 テスト2
出力完了

ただ、key を外して foreach my $row (%table)とすると下記の通り改行が入ります
1 10 テスト1

2 5 テスト2

出力完了
513: デフォルトの名無しさん [sage] 2024/03/16(土)09:16:48.08 ID:1WMRgWrv(1)
ネタにマジレス
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.022s