From: "akira yamada / やまだあきら" Date: 2004-05-26T19:46:16+09:00 Subject: [ruby-dev:23629] Re: [uri.rb] non-hierarchical URI with a fragment >>>>> In [ruby-dev : No.23628] >>>>> Masahiro Sakai (酒井政裕) wrote: > URI.parse("mailto:foo@example.com#bar") > #=> # > > というように扱えるのですが、fragment部分を+で結合しようとすると > > URI.parse("mailto:foo@example.com") + "#bar" > #=> URI::BadURIError: not hierarchical URI: mailto:foo@example.com > > というようにエラーになってしまいます。 > > これは一貫性に欠けるのではないでしょうか。 > もし意図的にエラーにしているのでなければ、 > 後者の場合も処理できると嬉しいです。 +/-はパス名の処理のために作ったので 意図していると言えば意図しています。 +/-のようなメソッドがそのような意味であるべきではない ということになると、うーん、どうなんでしょうか。 ただ、どっちにしても単に文字列を連結するというのは 動作としてあまり具合が良くないんじゃないかと思います。 ちなみに元々のお話ですと次のようにできます。 $ ruby -ruri -e 'u=URI.parse("mailto:foo@bar"); p u; u.fragment="xyz"; p u' # # -- やまだあきら Vine Caves, Ltd.