[#42624] Ruby インストールできません — 水野 あゆみ <chaaneko@...>
Ruby超初心者です。
9 messages
2006/08/07
[#42629] Re: Ruby インストールできません
— Takahiro Kambe <taca@...>
2006/08/07
In message <20060807042520.90137.qmail@web3002.mail.tnz.yahoo.co.jp>
[#42643] メールのSMTP認証の方法(質問) — "Hisashi Yahata" <yahatah@...>
お世話になります。
34 messages
2006/08/09
[#42645] Re: メールのSMTP認証の方法(質問)
— WATANABE Tetsuya <Tetsuya.WATANABE@...>
2006/08/09
渡辺哲也です。
[#42649] Re: メールのSMTP認証の方法(質問)
— OHARA Shigeki <os@...>
2006/08/09
大原です。
[#42650] Re: メールのSMTP認証の方法(質問)
— "Hisashi Yahata" <yahatah@...>
2006/08/09
大原様
[#42651] Re: メールのSMTP認証の方法(質問)
— 植田裕之 <ueda@...>
2006/08/09
植田と申します。
[#42654] Re: メールのSMTP認証の方法(質問)
— "Hisashi Yahata" <yahatah@...>
2006/08/09
植田 裕之様
[#42655] Re: メールのSMTP認証の方法(質問)
— 植田裕之 <ueda@...>
2006/08/09
植田です。
[#42656] Re: メールのSMTP認証の方法(質問)
— "Hisashi Yahata" <yahatah@...>
2006/08/09
植田様
[#42657] Re: メールのSMTP認証の方法(質問)
— WATANABE Tetsuya <Tetsuya.WATANABE@...>
2006/08/09
渡辺哲也です。
[#42659] Re: メールのSMTP認証の方法(質問)
— Kazuhiro NISHIYAMA <zn@...>
2006/08/09
西山和広です。
[#42664] Re: メールのSMTP認証の方法(質問)
— "Hisashi Yahata" <yahatah@...>
2006/08/10
西山和広様
[#42674] Re: メールのSMTP認証の方法(質問)
— Kazuhiro NISHIYAMA <zn@...>
2006/08/11
西山和広です。
[#42665] 組み合わせを作るrubyらしい方法 — しん <dezawa@...>
出沢です
7 messages
2006/08/10
[#42682] Javaの interfaceのようなもの — Yuumi Yoshida <yuumi3@...>
こんにちは、 yuumi3です。
5 messages
2006/08/13
[#42690] StringScanner と case の相性 & メソッド上書きの方法 — take_tk <ggb03124@...>
たけ(tk)です
7 messages
2006/08/15
[#42691] リンクを抜き出す正規表現について — Yosuke Suzuki <yosuke@...>
suzukiといいます。
10 messages
2006/08/15
[#42693] in演算子の提案 — <rubyist@...>
はじめまして。diceと申します。
8 messages
2006/08/15
[#42715] n次元配列#each_index — Sato Hiroshi <hirocy.f01@...>
hirocyです.
4 messages
2006/08/17
[#42720] ベクターに登録されている Windows 用Rubyバイナリ — KIMURA Koichi <kbk@...>
木村です。
6 messages
2006/08/18
[#42724] エスケープシーケンスの画面制御について — リックス <rubyer4649@...>
りっくすです
7 messages
2006/08/19
[#42737] rexmlでのUTF-16の扱いについて — 石田 三英 <ishida@...>
石田と申します。
9 messages
2006/08/22
[#42758] eval substirution with variable — KIRIYAMA Kazuhiko <kiri@...>
桐山です.
6 messages
2006/08/28
[#42765] ?がメソッド名の途中にあるのはNG? — Daisuke Yamazaki <yamajaki@...>
こんにちは.山崎です.
6 messages
2006/08/29
[ruby-list:42690] StringScanner と case の相性 & メソッド上書きの方法
From:
take_tk <ggb03124@...>
Date:
2006-08-15 03:57:35 UTC
List:
ruby-list #42690
たけ(tk)です
(1)StringScanner で case が使える方がうれしいのではないでしょうか?
s = StringScanner.new('This is an example string.')
until s.eos?
case s
when /\w+/ ; p [:word, s.matched]
when /\s+/ ; p [:space, s.matched]
else ; p [:mismatched, s.string[s.pos..-1]] ; break
end
end
#=> [:word, "This"]
#=> [:space, " "]
#=> [:word, "is"]
#=> [:space, " "]
#=> [:word, "an"]
#=> [:space, " "]
#=> [:word, "example"]
#=> [:space, " "]
#=> [:word, "string"]
#=> [:mismatched, "."]
(2)alias で実現できるのですが・・
require "strscan"
class Regexp
alias eqq ===
def ===(v)
return eqq(v) unless v.is_a? StringScanner
return v.scan(self)
end
end
s = StringScanner.new('This is an example string.')
until s.eos?
case s
when /\w+/ ; p [:word, s.matched]
when /\s+/ ; p [:space, s.matched]
else ; p [:mismatched, s.string[s.pos..-1]] ; break
end
end
(3)alias方式はエレガントではない。
alias方式だと次のような問題があります。
1 なんとなくエレガントではない。
2 保存名の衝突を心配しなければならないのではないか?
3 loadで2回読み込んだとき、や組込みRubyで再実行したときに、無限ループ
になる。
(4)基本クラスのメソッドを変更するためのうまい方法は無いでしょうか?
たとえば、組込みモジュールで、基本クラスのメソッドと同じ名前で定義したと
きに、superで基本クラスの同名メソッドの呼び出しができるようにする、とか
・・
class StringScanner
module Regexp_ex
def ===(v)
return super unless v.is_a? StringScanner
return v.scan(self)
end
end
end
class Regexp
include StringScanner::Regexp_ex
end
(5)super=承継元クラスの同名メソッドを呼び出す=とは別に、
overridden=上書きされたメソッドを呼び出す=というのを作るというのはどう
でしょう?
Take_tk = KUMAGAI Hidetake
たけ(tk)=熊谷秀武