[#2294] raise == Thread.current.raise ? — sinara@...
原です。
8 messages
1997/03/03
[#2295] Re: raise == Thread.current.raise ?
— matz@... (Yukihiro Matsumoto)
1997/03/03
まつもと ゆきひろです.
[#2321] shutdown — sinara@...
原です。
9 messages
1997/03/05
[#2327] %Q!string! — sinara@...
原です。
9 messages
1997/03/06
[#2340] ruby 1.0-9700306 available — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
2 messages
1997/03/06
[#2342] debug.rb —
わたなべです.
7 messages
1997/03/08
[#2355] [Req] Array#reverse — keiju@... (Keiju ISHITSUKA)
けいじゅ@SHLジャパンです.
19 messages
1997/03/13
[#2357] Re: [Req] Array#reverse
— matz@... (Yukihiro Matsumoto)
1997/03/13
まつもと ゆきひろです.
[#2359] Re: [Req] Array#reverse
—
1997/03/13
けいじゅ@SHLジャパンです.
[#2364] [Req] Hash#reverse (Re: [Req] Array#reverse )
— sinara@...
1997/03/13
原です。
[#2366] Re: [Req] Hash#reverse (Re: [Req] Array#reverse )
—
1997/03/13
けいじゅ@SHLジャパンです.
[#2379] ruby 1.0-970318 released — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです.
8 messages
1997/03/18
[#2387] Kanji String — gotoken@... (GOTO Kentaro)
はじめまして、 後藤ともうします。
33 messages
1997/03/19
[#2389] Re: Kanji String
— matz@... (Yukihiro Matsumoto)
1997/03/19
まつもと ゆきひろです.
[#2391] Re: Kanji String
— gotoken@... (GOTO Kentaro)
1997/03/19
後藤です
[#2393] Re: Kanji String
— matz@... (Yukihiro Matsumoto)
1997/03/19
まつもと ゆきひろです.
[#2465] curses library
— MAEDA Shugo <ender@...>
1997/03/28
前田です。
[#2469] Re: curses library
— MAEDA Shugo <ender@...>
1997/03/28
前田です。
[#2470] Re: curses library
— WATANABE Hirofumi <watanabe@...>
1997/03/28
わたなべです.
[#2488] Re: curses library
— matz@... (Yukihiro Matsumoto)
1997/03/29
まつもと ゆきひろです
[#2497] Re: curses library
— MAEDA Shugo <ender@...>
1997/03/29
前田です。
[#2512] Re: curses library
— matz@... (Yukihiro Matsumoto)
1997/03/31
まつもと ゆきひろです.
[#2485] Re: curses library
— matz@... (Yukihiro Matsumoto)
1997/03/29
まつもと ゆきひろです
[#2495] Re: curses library
— MAEDA Shugo <ender@...>
1997/03/29
前田です。
[#2513] Re: curses library
— matz@... (Yukihiro Matsumoto)
1997/03/31
まつもと ゆきひろです.
[#2604] Re: curses library
— sinara@...
1997/04/04
原です。
[#2388] eval()'s context — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです.
5 messages
1997/03/19
[#2395] Re: eval()'s context — Shin-ichiro Hara <sinara@...>
原です。
6 messages
1997/03/19
[#2402] about TCPserver — MAEDA Shugo <ender@...>
前田です。
45 messages
1997/03/21
[#2403] Re: about TCPserver
— matz@... (Yukihiro Matsumoto)
1997/03/22
まつもと ゆきひろです
[#2405] Re: about TCPserver
— MAEDA Shugo <ender@...>
1997/03/23
前田です。
[#2406] Re: about TCPserver
— matz@... (Yukihiro Matsumoto)
1997/03/24
[#2408] Re: about TCPserver
— WATANABE Hirofumi <watanabe@...>
1997/03/24
わたなべです.
[#2411] Re: about TCPserver
— MAEDA Shugo <ender@...>
1997/03/24
前田です。
[#2417] Re: about TCPserver
— matz@... (Yukihiro Matsumoto)
1997/03/25
まつもと ゆきひろです.
[#2425] Re: about TCPserver
— MAEDA Shugo <ender@...>
1997/03/25
前田です。
[#2430] Re: about TCPserver
— matz@... (Yukihiro Matsumoto)
1997/03/26
まつもと ゆきひろです
[#2437] Re: about TCPserver
— MAEDA Shugo <ender@...>
1997/03/26
前田です。
[#2442] JString? (Re: about TCPserver)
— matz@... (Yukihiro Matsumoto)
1997/03/27
まつもと ゆきひろです
[#2459] Re: JString? (Re: about TCPserver)
— MAEDA Shugo <ender@...>
1997/03/27
前田です。
[#2407] Re: about TCPserver
— WATANABE Hirofumi <watanabe@...>
1997/03/24
わたなべです.
[#2429] \W, \S, \D — WATANABE Hirofumi <watanabe@...>
わたなべです.
7 messages
1997/03/26
[#2439] url escape — gotoken@... (GOTO Kentaro)
どシロウトの後藤です.
57 messages
1997/03/27
[#2444] Re: url escape
— matz@... (Yukihiro Matsumoto)
1997/03/27
『だらだら日記−−』の読者,まつもと ゆきひろです
[#2449] Re: url escape
— sinara@...
1997/03/27
原です。
[#2451] Re: url escape
— sinara@...
1997/03/27
原です。
[#2455] class design (Re: url escape)
— matz@... (Yukihiro Matsumoto)
1997/03/27
まつもと ゆきひろです
[#2471] Re: class design (Re: url escape)
— sinara@...
1997/03/28
原です。
[#2487] Re: class design (Re: url escape)
— matz@... (Yukihiro Matsumoto)
1997/03/29
まつもと ゆきひろです
[#2510] Re: class design (Re: url escape)
—
1997/03/30
けいじゅ@SHLジャパンです.
[#2603] Re: class design (Re: url escape)
— sinara@...
1997/04/04
原です。
[#2628] Re: class design (Re: url escape)
—
1997/04/05
けいじゅ@SHLジャパンです.
[#2615] Re: class design (Re: url escape)
— MAEDA Shugo <ender@...>
1997/04/04
前田です。
[#2476] [Req] for Struct and [?] for Class — keiju@... (Keiju ISHITSUKA)
けいじゅ@SHLジャパンです.
13 messages
1997/03/28
[#2486] Re: [Req] for Struct and [?] for Class
— matz@... (Yukihiro Matsumoto)
1997/03/29
まつもと ゆきひろです
[#2509] Re: [Req] for Struct and [?] for Class
—
1997/03/30
けいじゅ@SHLジャパンです.
[#2518] Re: [Req] for Struct and [?] for Class
— matz@... (Yukihiro Matsumoto)
1997/03/31
まつもと ゆきひろです.
[#2534] Re: [Req] for Struct and [?] for Class
—
1997/03/31
けいじゅ@SHLジャパンです.
[#2536] Re: [Req] for Struct and [?] for Class
— matz@... (Yukihiro Matsumoto)
1997/03/31
まつもと ゆきひろです.
[#2537] Re: [Req] for Struct and [?] for Class
—
1997/03/31
けいじゅ@SHLジャパンです.
[#2500] How to make const by C — MAEDA Shugo <ender@...>
前田です。
8 messages
1997/03/30
[#2504] Re: WWW library — Shin-ichiro Hara <sinara@...>
原です。
6 messages
1997/03/30
[#2505] Re: WWW library (Re: class design) — Shin-ichiro Hara <sinara@...>
原です。
15 messages
1997/03/30
[#2514] Re: WWW library (Re: class design)
— matz@... (Yukihiro Matsumoto)
1997/03/31
まつもと ゆきひろです
[#2519] Re: WWW library (Re: class design)
— matz@... (Yukihiro Matsumoto)
1997/03/31
まつもと ゆきひろです.
[#2541] Q: add class methods (Re: WWW library)
— gotoken@... (GOTO Kentaro)
1997/03/31
シロウトの後藤です
[#2542] Re: Q: add class methods (Re: WWW library)
— matz@... (Yukihiro Matsumoto)
1997/03/31
まつもと ゆきひろです.
[ruby-list:2439] url escape
From:
gotoken@... (GOTO Kentaro)
Date:
1997-03-27 00:58:37 UTC
List:
ruby-list #2439
どシロウトの後藤です.
python のWWWライブラリを ruby にチマチマ移そうとしてます.
とりあえず練習に URL のエスケープ関数を書いてみたので,
誰か添削してもらえませんか? 40行ほどなので添付しました.
# なんかダサいような気がしてます. 特に, unquote
Uppercase などはどこかで定義されるかと思ったのですが
見つけきれませんでした.
それと質問なのですが近い将来この urllib.rb に
p = URL.open("http://www.caelum.co.jp/~matz/ruby/)
page = p.readlines()
p.close()
のようなのも付け加えたいのですが, その場合,
この場合 URL は module でなくて class にすべきなのでしょうか?
URL.quote しか使わないかも知れないのにクラスが初期化されるのは
モッタイナイので module にしようかと思っているのです.
が, それは勘違いのような気がしてるので.
- -- beg urllib.rb
# usage:
# URL.quote(str, *extra) # return escaped URL String
# URL.unquote(str) # return decoded URL String
module URL
Uppercase = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
Lowercase = "abcdefghijklmnopqrstuvwxyz"
Letter = Uppercase + Lowercase
Digits = "0123456789"
Alwaysafe = Letter + Digits + '_,.-'
def quote(s, *extra)
safe = Alwaysafe
safe += extra.join if extra
res = []
s.each_byte{|b|
c = sprintf("%c",b)
if safe.index(c)
res << "" + c + ""
else
res << "%" + sprintf("%2X",b) + ""
end
}
return res.join
end
module_function :quote
Quoteprog = Regexp.compile(/%[0-9a-fA-F][0-9a-fA-F]/)
def unquote(s)
i = 0
n = s.length
res = []
while 0 <= i and i < n
j = (Quoteprog =~ s[i..n])
unless j
res << s[i..n]
break
else
res << s[i,j] + s[i+j+1,2].hex.chr
i += j+3
end
end
return res.join
end
module_function :unquote
end
- -- end urllib.rb
--
後藤 謙太郎@北海道大学大学院理学研究科数学専攻博士課程
mailto:gotoken@math.hokudai.ac.jp