実現したい事:
Rubyの正規表現を勉強しているのですが、
getsで得た文字列から、改行コードを取り除きたいです。
実行エラーは出ていないのですが、改行コードが取り除けていません。
どなたかご教授お願いします。
環境:
Windows10
ruby 2.6.9p207 [x64-mingw32]
エラー:(実行時のエラーメッセージはなし)
実行例↓
入力文字列→ 2403/2+752
※演算子のみ取り出したいが、\nまで取り込んでしまう。
取得した値→["", "/", "+", "\n"]
※上記の\nを除いて取得したいです。
該当コード:
def calculate
puts("計算式を入力してください")
puts("※ただし最初の数字は整数かつ正の数を入力してください")
input_value = gets
puts input_value
num_list = input_value.scan(/\d+/)
print("入力した数値の一覧→")
p num_list
symbol_list = input_value.scan(/\D+|^\n/)
print("入力した演算子の一覧→")
p symbol_list
end
calculate
補足:
下記の行が問題なのですが、
symbol_list = input_value.scan(/\D+|^\n/)
↑に代えて↓にしてもやはり改行コードを取得してしまいます。
symbol_list = input_value.scan(/\D+/)
以上、ご解答頂ければ幸いです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/12/24 01:24