Ruby Tips!

RubyのTipsを紹介します

文字列の一部を切り出す

Rubyで文字列の一部を切り出すには、String#[]を使うと良い。以下は2文字目から3文字分を切り出す例である。

str = "abcdefg"
p str[2, 3] #=> "cde"

ただし、この切り出しはRuby 1.9では文字単位だが、Ruby 1.8ではバイト単位であることに注意。このため日本語の文字列は正常に扱えない。

Ruby 1.8で文字単位の切り出しを行うには、正規表現を使って以下のようにする。

str = "あかさたなはまやらわ"
p str.slice(/\A.{,2}(.{,3})/, 1) #=> "さたな"