Ruby Tips!

RubyのTipsを紹介します

2014-04-02から1日間の記事一覧

ファイルの最後にデータを追記する

ファイルの最後にデータを追記するには、openのオプションにaを指定して追記モードでファイルをオープンして、書き込みを行えば良い。 open('foo.txt', 'a'){|f| f.puts 'hoge' } ファイルをオープンするオプションの詳細についてはファイルを開く - Ruby Ti…

配列の中から最大値・最小値を求める

配列の中から最大値・最小値を求めるにはArray#max、Array#minを使う。 p [1, 2, 3, 4, 5].max #=> 5 p [1, 2, 3, 4, 5].min #=> 1 デフォルトでは最大値・最小値を求めるための比較はで行われる。ブロックを渡すと比較の処理を置き換えることができる。例え…

TCPクライアントを実装する

TCPクライアントを実装するにはsocketライブラリのTCPSocketを使う。以下は簡単なHTTPクライアントの例である。 require 'socket' TCPSocket.open('www.yahoo.co.jp', 80){|s| s.print "GET / HTTP/1.0\r\n\r\n" print s.read } TCPSocket.openには、接続先…

Rubyの文字列リテラルについて

Rubyには多数の文字列リテラルが存在する。1つずつ見てみよう。まず式展開が不要な文字列はシングルクオート'を使う。'と\以外、エスケープが不要なのも利点である。 p 'foo' #=> "foo" 式展開が必要な文字列はダブルクオート"を使う。Rubyの文字列の中で最…

平方根を求める

Rubyで数値の平方根を求めるにはMath.sqrtを使う。また、平方根はべき乗Numeric#**を使って、1/2乗として求めることもできる。負の数の平方根は複素数を表すComplexオブジェクトとして得られる。 require 'complex' p Math.sqrt(2) #=> 1.4142135623730951 p…

文字を置換する

文字列中のある文字を別の文字に置換するにはString#trが利用できる。以下は文字bを、Bに置換する例である。 p "foo bar buz".tr('b', 'B') #=> "foo Bar Buz" String#trの引数に複数文字からなる文字列を指定すると、両方に対応する位置の文字にそれぞれ置…

文字列を置換する

文字列を置換するにはString#subまたはString#gsubを使う。String#subはマッチした最初の1つだけを、String#gsubはマッチしたすべての文字列を置換した新しい文字列を返す。これらのメソッドの基本的な使い方は第1引数に置換対象の文字列か正規表現を指定し…