在Ruby中交换字符串中的字母

3

我需要使用Ruby交换字符串(DNA链)中的字母,并按照以下规则:

  • 'A'替换为'T'
  • 'T'替换为'A'
  • 'C'替换为'G'
  • 'G'替换为'C'

例如,'ACGTA'应更改为'TGCAT'

我只完成了这一部分:

def DNA_strand(dna)    
  dna.tr!('A', 'T')    
end

你有什么问题? - sawa
1个回答

9
你离正确答案很近:
dna.tr('ATCG', 'TAGC')   # => "TGCAT"

参见ruby-doc.org的tr方法

tr方法返回一个新的字符串,将from_str中的字符替换为相应的to_str中的字符。

如果想要直接在原字符串上进行修改,请使用tr!方法。


非常感谢!我没有意识到你可以这样做。 - KVyas

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接