0

这让我发疯的时间比它应该的要长得多,我正在使用简单的字符串替换,但它无法根据它获得的信息替换字符串(在这种情况下,它是'url')。

class Test
  myURL = 'www.google.com'
puts 'Where are you from?'
  location = gets
    if location == 'England'
     myURL['.com'] = '.co.uk'
    elsif location == 'France'
     myURL['.com'] = '.co.fr'
    end
puts myURL
end

我要疯了吗?

4

2 回答 2

8

更改location = getslocation = gets.chomp

正在发生的事情gets是它正在拾取您在提示中键入的所有内容,其中包括Enter密钥。因此,如果您输入“英格兰”,那么:

location == "England\n" #=> true
location == "England"   #=> false

String#chomp方法将删除最后的终止行。

于 2013-03-24T19:40:53.780 回答
1

你只需要这样做:

class Test
    myURL = 'www.google.com'
    puts 'Where are you from?'
    location = gets.chomp
    if location == 'England'
        myURL['.com'] = '.co.uk'
    elsif location == 'France'
        myURL['.com'] = '.co.fr'
    end
    puts myURL
end

原因是返回的字符串gets末尾有换行符。

于 2013-03-24T19:45:11.897 回答