よく使う関数
- gets ... 標準入力の取得
- chomp ... 改行コードを取り除いた文字列を生成して返す。(\nとかを取り除く)
- gsub(/\n/, '') .... 第一引数の正規表現に一致する文字列の部分を、第二引数の文字列で置換する。この場合、改行コードを空白に置換する。chompで文字列ごと消え去ることがたまにあるので、その際はgsubで置換するとなんか上手くいきます。
- split('<区切り文字>')...文字列.split('<区切る文字>')で実行すると、区切る文字ごとに文字列が分割され、配列として格納されます。例えば、numbers = '1-2-3-4'.split('-')とするとnumbersの中身は1,2,3,4と区切られた数字が格納されます。
- to_i ... 整数型に変換する
- to_s ... 文字列型に変換する
例
例1 N行の文字列を配列に格納する
#標準入力の例
N
word_1
word_2
.
.
.
word_n
#実装するコード
N = gets.to_i
words = [] #配列を宣言
N.times do
words << gets.chomp!
end
例2 複数の文字列が1行で渡される場合
#標準入力の例
#1行目: 半角スペースで区切られている場合
a_1 a_2 a_3 a_4
#2行目: ハイフンで区切られている場合
taro-takashi-akemi
#実装するコード
array_a = gets.split(' ') #スペースで区切って配列として格納
array_b = gets.split('-') #ハイフンで区切って配列として格納