2015-07-09 2 views
2

мне нужно поменять местами буквы в строке (нить ДНК) с помощью Ruby, и следующие правила:Перестановка букв в строке в Руби

  • 'A' заменяется 'T'
  • 'T' заменяется 'A'
  • 'C' заменяется 'G'
  • 'G' заменяется 'C'

Например, 'ACGTA' должно стать 'TGCAT'.

Я только что получил это далеко:

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

Что вы хотите сказать? – sawa

ответ

6

Вы были очень близки:

dna.tr('ATCG', 'TAGC') # => "TGCAT" 

См ruby-doc.org on tr:

Возвращает копию str с символами в from_str замененных соответствующих символов в to_str.

Используйте tr! так же, если вы хотите изменить свою строку на месте.

+0

Большое спасибо! Я не понимал, что ты можешь это сделать. – KVyas

Смежные вопросы