[#139] ruby 0.97 available — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろ@トヨタケーラムです.
1 message
1996/02/13
[#145] Re: The black face. — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろ@トヨタケーラムです.
1 message
1996/02/14
[#182] Re: DOS port — Kazuhiko Iwama <iwama@...>
■ [ruby-list:178] Re: DOS port
1 message
1996/02/20
[#184] Re: DOS port — Kazuhiko Iwama <iwama@...>
■ [ruby-list:181] Re: DOS port
1 message
1996/02/20
[#185] Re: DOS port — Kazuhiko Iwama <iwama@...>
■ [ruby-list:183] Re: DOS port
1 message
1996/02/20
[#196] Re: DOS port — Kazuhiko Iwama <iwama@...>
■ [ruby-list:183] Re: DOS port
1 message
1996/02/26
[#198] Re: DOS port — Kazuhiko Iwama <iwama@...>
■ [ruby-list:197] Re: DOS port
1 message
1996/02/26
[#201] Re: ruby for JPower — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろ@トヨタケーラムです.
1 message
1996/02/26
[ruby-list:128] TUTOROAL - strings
From:
matz@... (Yukihiro Matsumoto)
Date:
1996-02-06 06:10:32 UTC
List:
ruby-list #128
チュートリアルの5回目です(だよね).今回は『文字列』. -- * 文字列と正規表現 rubyは数字だけでなく,文字列も扱うことができる.文字列は(既 に出て来ているが),""や''で括られたものである. ruby> "abc" "abc" ruby> 'abc' "abc" ""と''がどこが違うかというと""の中ではバックスラッシュ(\)を つかったいろいろな表現が使える. ruby> "\n" "\n" ruby> '\n' "\\n" ruby> "\001" "\001" ruby> '\001' "\\001" rubyの文字列はCの文字列よりちょっと賢い.例えば文字列の結合 は`+'でできるし,繰り返しは`*'だ. ruby> "foo" + "bar" "foobar" ruby> "foo" * 2 "foofoo" Cならば char *s = malloc(strlen(s1)+strlen(s2)+1); strcpy(s, s1); strcat(s, s2); などとするところだろう.使わなくなった文字列の領域を開放する こともrubyでは考えなくても良い. rubyの文字列は実にたくさんの機能を持っているのだが,ここでは その一部だけを紹介しよう. 文字列の結合 ruby> word = "fo" + "o" "foo" 文字列の繰り返し ruby> word = word * 2 "foofoo" 文字の取り出し(rubyの文字は整数) ruby> word[0] 102 # 102は`f'のASCIIコード 部分文字列の取り出し ruby> word[0,1] "f" ruby> word[0..1] "fo" 一致判定 ruby> "foo" == "foo" TRUE ruby> "foo" == "bar" FALSE では,これらの機能を使ってパズルを作ってみよう.パズルとはい えないくらいお粗末だが…. words = ['foobar', 'baz', 'quux'] srand() word = words[rand(3)] print "guess? " guess = STDIN.gets if word == guess print "you win\n" else print "you lose. the word is ", word, ".\n" end これを実行すると以下のようになる(foobarがユーザの入力だ). guess? foobar you lose. the word is baz. なかなか当たらない.おまけにつまらない.これは悪い例題だな.