くだすれPerl(超初心 ..
[
2ch
|
▼Menu
]
■コピペモード
□
スレを通常表示
□
オプションモード
□このスレッドのURL
■項目テキスト
10:nobodyさん 08/03/14 01:49:59 sSfBLQ5N 8n って文字列かと思ったじゃねぇか あとマルチポストは控えめに 11:nobodyさん 08/03/14 11:05:45 tA8hqU0W 正規表現で>>1というようにアンカーが付くとリンクされるというのは出来たのですが、>>1のように単体でログを表示するやり方が分かりませんm(_ _)m 12:nobodyさん 08/03/14 13:36:44 先生∩ sub uniq #重複行削除 { my %seen; return (grep { ! $seen{$_}++ } @_); } sub uniqu #1回のみの行 { my %seen; $seen{$_}++ for @_; return (grep { $seen{$_} == 1 } @_); } な感じの物を見つけたのですが、何が起きてるかさっぱり解りません。 そこで質問です。 以下は2行以上あるものだけの出力になるっぽいのですが、合ってるでしょうか? sub uniqd { my %seen; return (grep { $seen{$_}++ == 1 } @_); } 13:nobodyさん 08/03/14 18:49:24 >>11 アンカー先のURLで記事を表示できるようにする必要ががある。 例えば<a href="./bbs.cgi?No=100">100</a>とするなら、 No100の記事をファイルから取得して表示する。 >>12 foreach(@_)としてるのと同じ感じで、配列の各値が$_に一時的に格納される。 んで{}内で$seen{$_}に1を代入してるわけ。 ハッシュのキーは重複しないので++でカウントできる。おk? この際ついでにgrepとmapについて勉強したほうがいい。 Perlの中でも強力な部類の関数だから
次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
レスジャンプ
mixiチェック!
Twitterに投稿
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch
5305日前に更新/136 KB
担当:undef