簡體   English   中英

Ruby的小寫方法無法正常工作

[英]Ruby downcase method not working as expected

我在Ruby中編寫了一小段代碼,用於編寫用戶指定的單詞,無論正在傳遞的單詞是全部大寫,小寫還是兩者的組合。 我試圖解決這個問題的方法就是使用downcase! 用戶傳遞的字符串上的方法。 但是,它似乎無法正常工作。 例如,如果傳遞並存儲在變量“text”中的第一個字符串全部為大寫,並且傳遞並存儲在變量“ downcase ”中的第二個字符串全部為downcase ,則程序將無法編輯該字和只會打印出downcase.所有downcase.

以下是代碼:

puts "Enter what you want to search through"
text = gets.chomp.downcase!
puts "Enter word to be redacted"
redact = gets.chomp.downcase!

words = text.split(" ")

words.each do |word|
 if word == redact
     print "REDACTED "
 else
     print word + " "
 end
end

問題是你使用downcase! 如果沒有改變,它將返回nil 字符串本身已修改,但返回的值為nil ,您將在text變量中保存。

請參閱有關小寫小寫的文檔 了解差異。

puts "Enter what you want to search through"
text = gets.chomp.downcase
puts "Enter word to be redacted"
redact = gets.chomp.downcase

words = text.split(" ")

words.each do |word|
 if word == redact
     print "REDACTED "
 else
     print word + " "
 end
end

嘗試時不要帶有感嘆號。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM