Arrays 移动字符串中的所有辅音,直到遇到第一个元音

Arrays 移动字符串中的所有辅音,直到遇到第一个元音,arrays,ruby,string,Arrays,Ruby,String,我试图在遇到第一个元音时,按顺序移动字符串末尾的所有辅音 例如,有了这段代码,我想要实现的目标就是使用atch这个词 sentence = 'chat' splitted = sentence.chars splitted.each do |letter| %w[a e i o u].include?(letter) ? break : splitted << splitted.shift end p splitted.join 但我最终得到的是hatc 关于如何实现这一点有

我试图在遇到第一个元音时,按顺序移动字符串末尾的所有辅音

例如,有了这段代码,我想要实现的目标就是使用atch这个词

sentence = 'chat'
splitted = sentence.chars
splitted.each do |letter|
  %w[a e i o u].include?(letter) ? break : splitted << splitted.shift
end

p splitted.join
但我最终得到的是hatc 关于如何实现这一点有什么建议吗?

您可以尝试:

元音=%w[a e i o u] 句子=‘聊天’ 拆分的=句子.chars 右_部分=[] 每一个字母| 元音。包括?字母?断开:右\u部分断开
假设字符串包含一个元音,您可以编写i=str.index/[aeiou]/i;str[i..-1]+str[0,i]。若要就地更改字符串,请选择str.replacestr[i..-1]+str[0,i]。该操作有效:谢谢