%
記法
%!
~ !
で囲む- ダブルクォーテーションで括ったことと等価
- 式展開も使える
- 「ダブルクォーテーションやシングルクォーテーションで括った際のエスケープ」といったことを気にしなくてよい
str = "world"
p %!hello, #{str}!
# "hello, world"
%!
~ !
である必要はない(区切り文字は !
である必要はない)^
は普段あまり使わないため、%^
~ ^
が使いやすいかも
str = "world"
p %^hello, #{str}^ #hello, world
p %@hello, #{str}@ #hello, world
ヒアドキュメント(行指向文字列リテラル)
<<識別子
line 1
line 2
line 3
識別子
- 識別子(下記例の場合は
TEXT
)は自由に命名できる
str = <<TEXT
hello
world
welcome
to
the
world
TEXT
puts str
# hello
# world
# welcome
# to
# the
# world
フォーマットを指定した文字列
x = sprintf('%0.2f', 1.2)
puts x # 1.20
puts x.class # String
x = sprintf('%0.3f', 1.2)
puts x # 1.200
puts x.to_f.class # Float
いろいろな文字列作成
p [1, 2, 3].join
# "123"
p "Hello" * 3
# "HelloHelloHello"