#はじめに
とうとうプログラミングスクール卒業の日となりました。
少し寂しいですがまだスタートラインにも立ってないので学習を続けます!
#問題
対象の文字列から末尾にある2文字を取得し、それらを3回数繰り返して出力するプログラムを実装して下さい。
#出力例
extra_end('nice') → 'cecece'
extra_end('abc') → 'bcbcbc'
extra_end('she') → 'hehehe'
#ヒント
雛形は下記になります
.rb
def extra_end(str)
# 処理
end
# 呼び出し例
extra_end('tokyo')
・ sliceメソッドを使います。
配列や文字列から指定した要素を取り出すことができるメソッドです。
公式ドキュメント
.rb
def extra_end(str)
char_num = str.length
right2 = str.slice(char_num - 2, 2)
puts right2 * 3
end
extra_end('tokyo')
まずは仮引数に今回の場合は'tokyo'が入ります。
char_numには仮引数で渡した文字列の文字数を知りたいので .length を使います。
.rb
def extra_end(str)
char_num = str.length
puts char_num
end
extra_end('tokyo')
=>5
このように数字が返り値として返ってきます。
そして文字を抜き出すために、 sliceメソッドを使います。
.slice( 開始位置, 終了位置(省略可能) )
後ろの2文字を取り出したいので
.rb
str.slice(char_num - 2, 2)
#char_numには数字なので5 - 2がされてます。なので開始は3文字目から2文字とるという記述になります。
あとは3掛けて同じ文字を3つ出す事が出来ます!