使用Ruby替换文本中的单词

使用Ruby替换文本中的单词,ruby,Ruby,我知道如何使用这个代码 poem['sleepy'] = 'busy' 上面的对象类型叫什么?它是一个数组吗? 我怎样才能将这首诗分配到正文的第一行,以替换放在那一行的单词“sleepy”?这不是数组,而是数组的方法。如果只想替换某一行,可以使用以下方法拆分poem字符串并获取数组: 然后,您可以在您希望的线路上进行更换: lines[3]["sleepy"] = "busy" 然后,您可以使用的方法再次将数组加入字符串: poem = lines.join("\n") 这不是一个数组,而

我知道如何使用这个代码

poem['sleepy'] = 'busy'
上面的对象类型叫什么?它是一个数组吗? 我怎样才能将这首诗分配到正文的第一行,以替换放在那一行的单词“sleepy”?

这不是数组,而是数组的方法。如果只想替换某一行,可以使用以下方法拆分poem字符串并获取数组:

然后,您可以在您希望的线路上进行更换:

lines[3]["sleepy"] = "busy"
然后,您可以使用的方法再次将
数组
加入
字符串

poem = lines.join("\n")
这不是一个数组,而是一个数组的方法。如果只想替换某一行,可以使用以下方法拆分poem字符串并获取数组:

然后,您可以在您希望的线路上进行更换:

lines[3]["sleepy"] = "busy"
然后,您可以使用的方法再次将
数组
加入
字符串

poem = lines.join("\n")

这是一种相当不自然的替换字符串的方法。您应该使用gsub。@vise,使用直接替换替换字符串有什么不自然的地方,为什么
gsub
更好?@theTinMan,[]=将在未找到括号中的文本时引发索引器,但gsub不会。并不是说[]=完全没有价值,但我认为gsub通常更灵活。
gsub
的行为与
[]=
不同<代码>子项将。我发现这三种方法都同样有用,但因为它们有不同的用途,我使用它们的方式也不同。每个都是工具箱中非常有效和有用的工具。这是一种相当不自然的替换字符串的方法。您应该使用gsub。@vise,使用直接替换替换字符串有什么不自然的地方,为什么
gsub
更好?@theTinMan,[]=将在未找到括号中的文本时引发索引器,但gsub不会。并不是说[]=完全没有价值,但我认为gsub通常更灵活。
gsub
的行为与
[]=
不同<代码>子项将。我发现这三种方法都同样有用,但因为它们有不同的用途,我使用它们的方式也不同。每个都是工具箱中非常有效和有用的工具。做得好,谢谢。在本例中,poem=我拥有的文本文件?@user1556385,
poem
是您在问题中提到的字符串变量。做得好,谢谢。在本例中,poem=我拥有的文本文件?@user1556385,
poem
是您在问题中提到的字符串变量。