[#5219] ruby for perl users — Noritsugu Nakamura <nnakamur@...>
35 messages
1997/11/09
[#5220] Re: ruby for perl users
— tateishi@... (Tateishi Takaaki)
1997/11/09
立石です。
[#5224] Re: ruby for perl users
— shugo@... (Shugo Maeda)
1997/11/09
前田です。
[#5225] Re: ruby for perl users
— tateishi@... (Tateishi Takaaki)
1997/11/09
立石です。
[#5248] Re: ruby for perl users
— HYOUDOU Kouichi /note <hyoudo@...>
1997/11/10
兵藤です
[#5249] Re: ruby for perl users
— Masaki Suketa <masaki.suketa@...>
1997/11/11
助田です
[#5231] Re: ruby for perl users
— Shin-ichiro HARA <sinara@...>
1997/11/10
原です。
[#5243] read from subprocess — Kikutani Makoto <kikutani@...>
きくたにです。
17 messages
1997/11/10
[#5250] Re: read from subprocess
— matz@... (Yukihiro Matsumoto)
1997/11/11
まつもと ゆきひろです
[#5255] Re: read from subprocess
— Masaki Suketa <masaki.suketa@...>
1997/11/11
助田です。
[#5256] Re: read from subprocess
— matz@... (Yukihiro Matsumoto)
1997/11/11
まつもと ゆきひろです
[#5257] Re: read from subprocess
— Masaki Suketa <masaki.suketa@...>
1997/11/11
助田です
[#5258] Re: read from subprocess
— matz@... (Yukihiro Matsumoto)
1997/11/11
まつもと ゆきひろです
[#5259] Re: read from subprocess
— Kikutani Makoto <kikutani@...>
1997/11/11
きくたにです。
[#5246] byte compile and ruby embeded system — Kikutani Makoto <kikutani@...>
きくたにです。
5 messages
1997/11/10
[#5284] sub — "Motoyuki S." <moto@...>
もと@大計といいます.
9 messages
1997/11/13
[#5294] binmode (Re: rbc-0_5.gz) — toyofuku@...
豊福@パパイヤです。
5 messages
1997/11/14
[#5300] Win32用の Rubyでの tkの使用 — Tomoaki Takebayashi <tota@...>
はじめまして、竹林といいます。
14 messages
1997/11/15
[#5302] Re: Win32用の Rubyでの tkの使用
— WATANABE Hirofumi <eban@...>
1997/11/15
わたなべです.
[#5303] Re: Win32 用の Rubyでの tkの使用
— Tomoaki Takebayashi <tota@...>
1997/11/15
[#5305] Re: Win32 用の Ruby での tk の使用
— aito@...5sun.yz.yamagata-u.ac.jp
1997/11/17
あ伊藤です.
[#5318] when should I call Tk mainloop? (Re: Win32 用の Ruby での tk の使用 )
— Kikutani Makoto <kikutani@...>
1997/11/18
きくたにです。
[#5320] ruby 1.0-971118 released — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
20 messages
1997/11/18
[#5337] Re: ruby 1.0-971118 released
— WATANABE Hirofumi <watanabe@...>
1997/11/19
わたなべです.
[#5340] Re: ruby 1.0-971118 released
— matz@... (Yukihiro Matsumoto)
1997/11/19
まつもと ゆきひろです
[#5344] Re: ruby 1.0-971118 released
— Shin-ichiro HARA <sinara@...>
1997/11/19
原です。
[#5347] Re: ruby 1.0-971118 released
— matz@... (Yukihiro Matsumoto)
1997/11/19
まつもと ゆきひろです
[#5350] Re: ruby 1.0-971118 released
— Masaki Suketa <masaki.suketa@...>
1997/11/19
助田です
[#5322] Questions on specs and threads — Kazuhisa Yanagawa <katze@...>
はじめまして. 読んでただけで今まで書いたことが無かったものです.
9 messages
1997/11/18
[#5323] Re: Questions on specs and threads
— matz@... (Yukihiro Matsumoto)
1997/11/18
まつもと ゆきひろです
[#5336] DBM.delete_if bug ? — 藤本尚邦 / FUJIMOTO Hisakuni <hisa@...>
はじめまして、藤本といいます。最近 ruby を使い始めまして、とってもとっ
8 messages
1997/11/18
[#5338] Re: DBM.delete_if bug ?
— matz@... (Yukihiro Matsumoto)
1997/11/19
まつもと ゆきひろです
[#5349] [How] Send ITERATOR BLOCK to "super" — Shin-ichiro HARA <sinara@...>
原です。
4 messages
1997/11/19
[#5373] オブジェクト指向用語 — KIMURA Koichi <kkimura@...>
13 messages
1997/11/20
[#5380] Hash bug ?? — tamori@...
11 messages
1997/11/21
[#5381] Re: Hash bug ??
— matz@... (Yukihiro Matsumoto)
1997/11/21
まつもと ゆきひろです
[#5398] 配列への追加について — a-nisida@... (西田明良)
はじめまして、西田@初心者 と申します。m(..)m
16 messages
1997/11/22
[#5403] Re: 配列への追加について
— WATANABE Hirofumi <eban@...>
1997/11/22
わたなべです.
[#5406] Re: 配列への追加について
— Shin-ichiro HARA <sinara@...>
1997/11/23
原です。
[#5407] Re: 配列への追加について
— matz@... (Yukihiro Matsumoto)
1997/11/23
まつもと ゆきひろです
[#5410] Re: 配列への追加について
— Shin-ichiro HARA <sinara@...>
1997/11/24
原です。
[#5414] Re: 配列への追加について
— matz@... (Yukihiro Matsumoto)
1997/11/25
まつもと ゆきひろです
[#5409] rbc.rb output — Noritsugu Nakamura <nnakamur@...>
11 messages
1997/11/24
[#5412] Re: rbc.rb output
— shugo@... (Shugo Maeda)
1997/11/24
前田です。
[#5418] Re: rbc.rb output
— keiju@... (石塚圭樹 )
1997/11/25
けいじゅ@日本ラショナルソフトウェアです.
[#5413] ruby for Linux RPM — Shoichi OZAWA <ozawa@...>
こんにちは 小澤@日立 です。
6 messages
1997/11/25
[#5419] blade mirrors netlab — Shin-ichiro HARA <sinara@...>
原です。
10 messages
1997/11/25
[#5420] ruby-1.0-971125 released (Re: blade mirrors netlab)
— matz@... (Yukihiro Matsumoto)
1997/11/25
まつもと ゆきひろです
[#5444] Re: Mail to HTML — takagi@... (TAKAGI Hiromitsu)
> >> 試みに ML のメールを HTML 化するスクリプトを書いてみています.
14 messages
1997/11/26
[#5453] Re: Mail to HTML
— Shin-ichiro HARA <sinara@...>
1997/11/27
原です。
[#5454] Re: Mail to HTML
— WATANABE Hirofumi <watanabe@...>
1997/11/27
わたなべです.
[#5470] communicate with subprocess part II — Kikutani Makoto <kikutani@...>
きくたにです。
8 messages
1997/11/28
[#5471] Re: communicate with subprocess part II
— Masaki Suketa <masaki.suketa@...>
1997/11/28
助田です
[ruby-list:5224] Re: ruby for perl users
From:
shugo@... (Shugo Maeda)
Date:
1997-11-09 09:23:55 UTC
List:
ruby-list #5224
前田です。
In message "[ruby-list:5220] Re: ruby for perl users"
Tateishi Takaaki <tateishi@sy.is.noda.sut.ac.jp> wrote:
|>> 問題かも知れませんが、多分こういうのをすぐに疑問に
|>> 感じると思うので…。
|
|でもやっぱりマニュアルにすべて載ってた
|ように思います。
|
|それを見ないでプログラムを組もうとする
|プログラマ(より一般的な意味で)はいない
|と思うのですが、、、、、
それはそうなのですが,Perlから以降する人のためのFAQが
あればruby普及に役立つかも,と思ったりもしますね(^^;
Perl使いでないので間違えてるかもしれませんが,一応
回答を試んでみます。
In message "[ruby-list:5219] ruby for perl users"
Noritsugu Nakamura <nnakamur@mxq.meshnet.or.jp> wrote:
|◎ Perl だと
|$name = "Nakamura";
|print "I am $name\n";
|とか書いてましたが、
|ruby ではどう書くのですか?
|print "I am $name\n";
|と書いてもうまくいきませんが。
print "I am #{$name}\n"
のように${と}で括ってください。
グローバル変数($nameとか)やインスタンス変数(@nameなど)の
場合は,
print "I am #$name\n"
のように{と}を省略できます。
|◎ 文字列の連結
|$hoge = "foo" . "bar";
|ってやっていましたが、ruby ではどう書くの?
rubyの場合はオブジェクトが自分のデータ型(つまりクラス)を
知っているので,数値でも文字列でも+で適切な動作をします。
rbc0> 1 + 2
3
rbc0> "1" + "2"
"12"
|◎ 部分文字列を切り出したいのですが、substr は?
self[offset, length]
で部分文字列を取り出すことができます。
rbc0> "0123456"[2, 3]
"234"
self[firstIndex...lastIndex]
でもOKです。
rbc0> "0123456"[2..4]
"234"
|◎ chop, chomp はありますか?
rbc0> "abc".chop
"ab"
でOKです。
# chompって?
|◎ 文字列比較 eq, ne とかありますか?
文字列の比較も数値同様==でOKです。
rbc0> str1 = "abc"
"abc"
rbc0> str2 = "abc"
"abc"
rbc0> str1 == str2
true
rubyでは==は同値を意味します。
オブジェクトの同一性を調べたい場合はequal?を使って
ください。
|◎ 配列の初期化とアクセスはどうやったら?
rbc0> array = ["a", "b", "c"]
["a", "b", "c"]
rbc0> array[0]
"a"
rbc0> array[0] = "A"
"A"
rbc0> array[0]
|◎ 連想配列の初期化は?
|%hogehoge = ('smtp' , '25', 'finger', '79');
|のような…。
rbc0> hash = {"smtp"=>25, "finger"=>79}
{"smtp"=>25, "finger"=>79}
とします。
|◎ 連想配列のアクセスは?
rbc0> hash["ftp"] = 21
21
rbc0> hash["ftp"]
21
とします。
|◎ for($i = 0; $i < 3; $i++) { }
|とかはどう書けば良いの?
for i in 0..3
end
を使います。
配列のアクセスなどは
array.each do |item|
...
end
や
for item in array
...
end
を使った方が便利です。
|◎ foreach は使えるの?
eachやforを使ってください。
|◎ while(<>) { }
|とか良く使っていたのですが、
|これはどう書いたら良いの?
while(<>) {} の意味がわかんなかったりして(^^;
|◎ 置換したいのですが、s///; tr///; に
|相当するものはありますか?
Stringにsub,gsub,trなどのメソッドがあります。
|◎ 日本語は使えるの?
もちろん:-)
EUCを使っているかぎり何も考えなくても大丈夫です。
文字コードの変換にはKconvが利用できます。
|◎ サブルーチンと引数の扱い方は?
基本的には値渡しです。
ただ引数は呼び出し側と同じオブジェクトを参照しているので,
引数のオブジェクトの状態を変更するメソッドを呼び出した場合
は,呼び出し側のオブジェクトにも影響を与えます。
つまり
def upcase1(str)
return str.upcase # upcaseはレシーバの状態を変更しない
end
def upcase2(str)
return str.upcase! # upcase!はレシーバの状態を変更しない
end
str = "abc"
p upcase1(str) # "ABC"
p str # "abc"
p upcase2(str) # "ABC"
p str # "ABC"
となります。
|◎ ファイルの扱い方は?
だいたい,
f = open(filename)
while line = f.gets
print line
end
f.close
みたいな感じです。
f = open(filename)
begin
while line = f.gets
print line
end
ensure
f.close
end
のように例外処理をすることが多いです。
--
前田 修吾