あーるPG - 社会人のデジタル生活

日曜プログラマになろうかなーと思った30代理系社会人の、キャリアアップや趣味(特にデジタル情報)の記録。らーめんとビールが好き。

2006-05-28から1日間の記事一覧

正規表現

reg = Regexp.new(/o/) # 正規表現生成 ARGF.each do |line| # if reg =~ line # 正規表現マッチ if /o/ =~ line # 正規表現直書き print line.gsub!(/o/,"*") # 全範囲置換. end end

CVSの扱い(文字分割)

str = "hoge1,ag,fupi" array = str.split(/,/) #正規表現で分割文字を指定 array.each do |word| puts word end a,b,c = str.split(/,/) #多重代入.それぞれに順番に代入される p array.join(" ") #arrayをStringに結合.分割文字' '

メソッドの作成

def func1(a,b) #defで始まる p self #親を表示 print a,b end #終わりはend func1("hoge1", "hoge2")

ブロックつきメソッド

def func3(a,b) print a + b + "\n" print yield("1fuga","2fuga") end # func3("hoge1", "hoge2"){|a,b| a.chop! + b.chop! }関数内でyield()関数を使うと、関数を呼んだときにyield()の動作自体を指定できる

classの作成, 変数の種類、継承、モジュール

class C1 #クラス名は大文字. Pi = 3.14 #大文字で始まるのは定数. @@foo_c = 0 #@@で始まるのはクラス変数. (=staticメンバ) def initialize(arg) #newの時に呼ばれる. print "initialize[" , @@foo_c , "]\n" @foo = true #@で始まるのはインスタンス変数.…

ディレクトリアクセス

# "." ".."も返る. サブディレクトリでも "hoge.txt"が返る. Dir.foreach("./") { |file| p file } # Dir.foreachと同じ Dir.entries("./").each{ |file| p file } # 一致するファイルに対して処理を行う. # **で再帰的に. (hoge/hoge.txtが返る) Dir.glob("…