2
我是Ruby的新手。我有這樣的線路,要求用戶輸入的金額:輸入Ruby的貨幣驗證
puts "Enter amount of money in $:"
goal = gets.chomp.to_f
我怎麼能輕鬆地檢查用戶是否dd中輸入了正確的金額:CC格式。像7.05或16.55(不包括45.343434之類的選項)。
我是Ruby的新手。我有這樣的線路,要求用戶輸入的金額:輸入Ruby的貨幣驗證
puts "Enter amount of money in $:"
goal = gets.chomp.to_f
我怎麼能輕鬆地檢查用戶是否dd中輸入了正確的金額:CC格式。像7.05或16.55(不包括45.343434之類的選項)。
它接受任何有兩位小數的數字。
#file.rb
puts 'enter amount in dollars'
amount = gets.chomp
r = /^\d+\.\d\d$/
unless amount.match r
puts 'incorrect format, please try again'
end
例
$ ruby file.rb
enter amount in dollars
444.884
incorrect format, please try again
將您的輸入字符串與您需要的模式匹配。一個例子正則表達式:可選導致消極的,可選的$,可選的逗號分隔,一美元的強制性兩位數的分數:
^\-?\$?[0-9]{1,3}(?:,?[0-9]{3})*\.[0-9]{2}$
你可以簡單的正則表達式。我建議使用像Rubular這樣的交互式工具來玩耍並瞭解更多關於正則表達式的知識。