くだすれPerl(超初心 ..
[
2ch
|
▼Menu
]
■コピペモード
□
スレを通常表示
□
オプションモード
□このスレッドのURL
■項目テキスト
756:nobodyさん 08/01/23 18:55:07 while (<F4>){ @words = split(/\n/, $_); wwwwwwwwwwwwwwwwwwwwwwwwwwww 757:nobodyさん 08/01/23 19:27:30 $/ = ''; 758:755 08/01/23 22:55:33 つまり 1.用語ファイル (単語が1行に一つずつ入ってる用語。500個位) 2.文書ファイル (文書ファイル。単純なテキスト) 3.2の文書ファイルを、1の用語ファイルの単語を一つずつ whileを使って検索します。 早めに必要なのでどなたか教えてください。>756さん笑ってないで。 759:nobodyさん 08/01/24 00:24:58 >>755 Perlでは(というか…)改行文字でレコードが分割されているので @words = split(/\n/, $_); # <-はありえない そもそも、こんなループを組むこと自体どうかとも思うが my @words = []; while (my $word = <F4>) { push @words, $word; # $_でもいいけど } ファイルをループ先頭でseekするのもありかな、あとはお好きにドゾー。 760:nobodyさん 08/01/24 07:38:32 >>755 >>759に書いてあるように改行文字で分割される、 事前に>>757を書いておくと、以降$/に代入された文字で分割されるようになる。 ここでは空文字列なので分割しなくなる。 my $txt { local $/; open(F,$txt_file) or die "$txt_fileをオープンできません。"; $txt = <F>; } open(F4,$dic_file) || die "$dic_fileをオープンできません。"; foreach $word (<F4>) { $word =~ s/\n$/s; $txt =~ s/\Q$word\E//sg #例: マッチ部分削除 } |´д`)ノ笑ってすまんね
次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
レスジャンプ
mixiチェック!
Twitterに投稿
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch
4293日前に更新/307 KB
担当:undef