文字列を扱うとき、そこそこお世話になってくるエスケープシーケンス。
今回はこのエスケープシーケンスの使い方を紹介します。
文字で表せない特殊な文字
以前この記事でもちらりと紹介していますが、「改行」という文字は画面上で直接表示できないので、エスケープシーケンス「\n」で表現します。
puts "ここで\n改行します" # 結果 => ここで 改行します。
最近あまりみかけないような気がしますが、タブ文字という一定の間隔を空けてくれる文字は「\t」を使います。 エスケープシーケンスを使う場合は、””(ダブルクォーテーション)で囲む必要があります。
ただの文字として表示するには''(シングルクォーテーション)を使います。
じゃあ\を出すときは?
\そのものを文字として出すときは\と入力します。
puts "\\バックスラッシュです" # 結果 => \バックスラッシュです
じゃあ”を出すときは?
""で囲っている中に"という文字を出したい場合、\"と入力します。
puts "\"1,000\"です" # 結果 => "1,000"です
色々混ぜてみるとこんな感じになります。
puts "このお菓子は\n \"¥1,000円\"です" # 結果 => このお菓子は "¥1,000円"です
余談ですが、Macだと\バックスラッシュを使いますが、Windowsだと¥を使います。さきほどの例をWindowsで置き換えると
# Windows puts "このお菓子は¥n ¥"¥¥1,000円¥"です" # 結果 => このお菓子は "¥1,000円"です
こんなふうになります。¥記号を出すために¥でエスケープしてあげる必要が出てきます。¥がいっぱいで読みづらい感じになってしまいますよね。そんな場合は以前紹介した、改行付きでみたままの文字列を変数に入れるやり方や、文字列を改行やカンマで区切るやり方など、他の手段を検討してみるといいかもしれません。