myParagraph = "Th ie f should be uppercase f"
swearWords = ["e","f"]
swearWords.each { |x|
if myParagraph.include?(x)
myParagraph.gsub!(x, x.upcase)
end
}
puts myParagraph
返回"Th iE F should bE uppErcasE F"
。这很好,但如果我用.include?
替换.eql?
,我希望结果为"Th ie F should be uppercase F"
,但我得到了"Th ie f should be uppercase f"
。为什么是这样? .eql
似乎不起作用?
答案 0 :(得分:0)
eql?
不起作用,因为您正在将多字符字符串与单字符字符串进行比较,而这些字符串永远不会相等。
答案 1 :(得分:0)
eql?
和myParagraph
是同一个对象时, x
才会返回true。