私は問題に行き詰まり、友人はそのようなことを説明する時間もなく解決策を送ってくれました。この問題に戻って、そこからもう少し学びたいと思います。誰かがこのコードの特定の側面を簡単に説明するのを手伝ってくれるかどうか疑問に思っていました.
def translate phrase
phrase.split.map do |word|
word =~ /^([^aeiouyq]*(qu)?)(.*)$/
first_translation = $1
rest_of_translation = $3
"#{rest_of_translation}#{first_translation}ay"
end.join(" ")
end
文字をどのように置き換えたかの概念がよくわかりません。私が言及している行は言葉です=~
これに関連して、私$
は自分の表現のチャンクを参照していることを知っています。とはいえ、どうやってそれらを手に入れたのかよくわかりません。