このディレクトリの索引
http://hibari.2ch.net/test/read.cgi/tech/1301067486/256
#  よろしくお願いします。 
#  ●正規表現の使用環境 
#  Ruby 
#  ●検索か置換か? 
#  検索 
#  ●説明 
#  株価のみを抜出し、DBに入れていく予定でいます。 
#  ●対象データ 
#  http://ime.nu/stocks.finance.yahoo.co.jp/stocks/history/?code=9984.T 
#  のソースから 
#   
#  ●希望する結果 
#  2011年6月30日 
#  3,010 
#  3,050 
#  2,986 
#  3,030 
#  8,376,600 
#  3,030 
#  . 
#  . 
#  . 
#  日付、始値、高値、安値、終値、出来高、調整後終値 
#  です。 
#  http://ime.nu/stocks.finance.yahoo.co.jp/stocks/history/?code=9984.T 
#  . 
#  . 
#  . 
#  <td>2011年6月30日</td> 
#  <td>3,010</td> 
#  <td>3,050</td> 
#  <td>2,986</td> 
#  <td>3,030</td> 
#  <td>8,376,600</td> 
#  <td>3,030</td> 
#  . 
#  . 
#  このページのソースから正規表現で、下記のように日付と株価の部分だけ抜き出すにはどうしたらよいでしょうか? 
#  2011年6月30日 
#  3,010 
#  3,050 
#  2,986 
#  3,030 
#  8,376,600 
#  3,030 
#  . 
#  . 
#  . 
#  . 
#   
#  言語はRubyで、([^<>]+)などで色々やってみましたが、どうにもうまく抜き出せません。 
#  また、webのHTMLから、正規表現である程度特定して文字列を抜き出し、 
#  その特定して抜き出した文字列に再度正規表現で、文字列を特定していくという 
#  方法は可能でしょうか? 
#  よろしくお願いします。 
# 

'ページのソースから正規表現で、下記のように日付と株価の部分だけ抜き出す'(WebURL,_日付か株価) :-
        get_lines(WebURL,Lines),
        日付と株価行を絞り込む(Lines,Lines2),
        絞り込んだ日付と株価行からデータ部分を切り取る(Lines2,_日付か株価).

日付と株価行を絞り込む(Lines,Lines2) :-
        日付と株価tableタグを捜す(Lines,R1),
        日付と株価行のみ選別(R1,Lines2).

日付と株価tableタグを捜す(Lines,R1) :-
        append(_,[Line1|R1],Lines),
        sub_atom(Lines,0,7,_,''),!,fail;true)),
                Lines2),!.

絞り込んだ日付と株価行からデータ部分を切り取る(Lines2,_日付か株価) :-
        append(_,[Line2|_],Lines2),
        sub_atom(Line2,0,4,_,'
'), sub_atom(Line2,4,_,5,_日付か株価).