[#44237] Float を利用するRubyプログラム — SASADA Koichi <ko1@...>

 ささだです.

16 messages 2007/11/17
[#44241] Re: Float を利用するRubyプログラム — SASADA Koichi <ko1@...> 2007/11/19

 ささだです.

[ruby-list:44258] Re: Rubyにおける日本語の正規表現のマッチングにつきまして

From: hantani <hantani@...>
Date: 2007-11-21 00:05:54 UTC
List: ruby-list #44258
uraxさん、おはようございます。
hantaniです。

yahoo.co.jpはEUCみたいなのでkconvでEUCに変換してみました。
#出力はsjisにしています
-----------------------------------------
require 'net/http'
require "nkf"
require "kconv"

host = 'yahoo.co.jp'
h = Net::HTTP.new(host, 80)

str="買う".toeuc

while htmlfile = DATA.gets
   htmlfile = htmlfile.chomp
   resp, data = h.get("/" + htmlfile, nil)
   data.each do |i|        #i=NKF.nkf("-u -xm0", i)
       if /#{str}/u =~ i
           puts i.tosjis
       end
   end
end
__END__
index.html
-----------------------------------------

Hiromitsu Matsuura さんは書きました:
> はじめて投稿させていただきます。
> uraxと申します。
> 
> Rubyで日本語の正規表現のマッチングを行おうと思っています。
> やろうとしていることは、htmlファイルを取得して、その中に指定した日本語が
> ある場合のみ特定の処理をしようというものです。
> 
> 試しに、yahoo.co.jp/index.htmlのファイルを取得して、'買う'という言葉が出 
> た行だけ表示しようと
> 以下のようなコードを書いてみたのですが、何も表示されずに思ったとおりに動 
> 作しませんでした。
> 
> ただ、'買う'という部分を別のアルファベット等に変えた場合には、動作するので
> 日本語の処理が間違っているのかなと考えています。
> 
> 初歩的な質問で申し訳ないのですが、何か情報がありましたら教えていただけな 
> いでしょうか。
> お手数をおかけしますが、よろしくお願いします。
> 
> ==================================================================
> require 'net/http'
> require "nkf"
> 
> host = 'yahoo.co.jp'
> h = Net::HTTP.new(host, 80)
> 
> while htmlfile = DATA.gets
>    htmlfile = htmlfile.chomp
>    resp, data = h.get("/" + htmlfile, nil)
>    data.each do |i|        i=NKF.nkf("-u -xm0", i)
>        if /買う/u =~ i
>            puts i
>        end
>    end
> end
> __END__
> index.html
> 
> ==================================================================
> 
> 
> 
> 
> 

In This Thread