[#32185] Date#+に大きな数字を与えるとおかしな日付に — "madoka yamamoto" <yamamotomadoka@...>

こんにちは、山本と申します。

26 messages 2007/11/08
[#32186] Re: Date#+に大きな数字を与えるとおかしな日付に — Tadayoshi Funaba <tadf@...> 2007/11/08

> Dateオブジェクトに+で大きな数字を与えるとおかしくなるようです。

[#32188] Re: Date#+に大きな数字を与えるとおかしな日付に — "madoka yamamoto" <yamamotomadoka@...> 2007/11/09

山本です。

[#32191] Re: Date#+に大きな数字を与えるとおかしな日付に — tadf@... 2007/11/09

> アルゴリズムの意味がわからないで書いた、表層的なパッチなので

[#32194] Re: Date#+に大きな数字を与えるとおかしな日付に — Yukihiro Matsumoto <matz@...> 2007/11/09

Hi,

[#32200] Re: rational (Re: Date#+に大きな数字を与えるとおかしな日付に) — Tadayoshi Funaba <tadf@...> 2007/11/10

> 1.9ではRationalとComplexを組み込みに、という話はありましたが、

[#32225] Re: rational (Re: Date#+に大きな数字を与えるとおかしな日付に) — Shin-ichiro HARA <sinara@...> 2007/11/12

原です。

[#32198] [提案] Array#tail — "Yusuke ENDOH" <mame@...>

遠藤と申します。

21 messages 2007/11/09
[#32199] Re: [提案] Array#tail — Yukihiro Matsumoto <matz@...> 2007/11/10

まつもと ゆきひろです

[#32352] 1.9.1のリリース時期について — KIMURA Koichi <hogemuta@...>

木村です。

16 messages 2007/11/24
[#32353] Re: 1.9.1のリリース時期について — Yukihiro Matsumoto <matz@...> 2007/11/24

まつもと ゆきひろです

[#32403] Next 1.8.6 patch release? (was Re: 1.9.1のリリース時期について) — Takahiro Kambe <taca@...>

こんばんは。

32 messages 2007/11/29
[#32414] Re: Next 1.8.6 patch release? (was Re: 1.9.1のリリース時期について) — Urabe Shyouhei <shyouhei@...> 2007/11/30

卜部です。

[#32444] Re: Next 1.8.6 patch release? (was Re: 1.9.1のリリース時期について) — Yukihiro Matsumoto <matz@...> 2007/12/03

まつもと ゆきひろです

[#32488] Re: Next 1.8.6 patch release? (was Re: 1.9.1のリリース時期について) — Urabe Shyouhei <shyouhei@...> 2007/12/08

卜部です。

[#32525] Re: Next 1.8.6 patch release? (was Re: 1.9.1のリリース時期について) — "Yusuke ENDOH" <mame@...> 2007/12/10

遠藤と申します。

[#32643] Re: Next 1.8.6 patch release? (was Re: 1.9.1のリリース時期について) — "Yusuke ENDOH" <mame@...> 2007/12/19

遠藤です。

[#32409] Re: [ruby-cvs:21293] Ruby:r14056 (trunk): * signal.c (trap_signm): SIGVTALRM no longer used for green — SASADA Koichi <ko1@...>

 ささだです.

10 messages 2007/11/30

[ruby-dev:32168] Can't use "|" in open-uri

From: UTUMI Hirosi <utuhiro78@...>
Date: 2007-11-05 08:10:33 UTC
List: ruby-dev #32168
内海と申します。はじめまして。

open-uri で使用する文字列に "|" が含まれていると、
bad URI と表示されて終了してしまいます。

私は Yahoo!デベロッパーネットワークの
「日本語形態素解析Webサービス」を利用しているのですが、
この中では URL に "|" を使用するケースがあります。
http://developer.yahoo.co.jp/jlp/MAService/V1/parse.html

例えば「テストです」という文章を解析して
名詞と助動詞を取り出す場合は、
次の URL をリクエストすることになります。
http://api.jlp.yahoo.co.jp/MAService/V1/parse?appid=YahooDemo&results=ma&filter
=9|12&sentence=テストです
"filter=9|12" のところで "|" を使っています。

対処法を検索したところ、次のような記述がありました。
http://www.adamrocker.com/blog/120/ruby_open_uri_parser_error.html
//
どうやらopen-uriのURIのパースにはURIライブラリを利用しているとの事。
ということで、URIライブラリのソースを眺めてみました。
するとuri/common.rbの39行目に以下の記述がありました。
RESERVED = ";/?:@&=+$,??[??]"
# 内海注: ruby 1.8.6-p111 では次のようになっています。
# RESERVED = ";/?:@&=+$,\\[\\]"

これはURIをパースする時に予約語となる文字列集合なのですが、
ここに「|」が含まれていない。
なるほど、これはパースできません。
ということで、この部分を以下のように変更してみました。

RESERVED = "|;/?:@&=+$,??[??]"
# 内海注: ruby 1.8.6-p111 では次のようになる。
# RESERVED = "|;/?:@&=+$,\\[\\]"

「|」を追加しています。
これで実行したらうまく動きました。
//

私の環境でもこれでうまく動作しています。

アマゾンのWeb APIを使ってOR検索する場合にも
"|" を使うそうです。

お手数をお掛けしますが修正していただけましたら幸いです。

--------------------------------------
Easy + Joy + Powerful = Yahoo! Bookmarks x Toolbar
http://pr.mail.yahoo.co.jp/toolbar/


In This Thread

Prev Next