如何從字符串中分離元音和輔音以創建過濾器?分離元音和輔音
我怎麼能代替輔音和元音與其他字母
我想出了這個
(\A[^aeio]{1,3})(\w*)/
同時在線搜索,但不知道它是如何工作的過去^aeio
濾波部分,以得到輔音。
如何從字符串中分離元音和輔音以創建過濾器?分離元音和輔音
我怎麼能代替輔音和元音與其他字母
我想出了這個
(\A[^aeio]{1,3})(\w*)/
同時在線搜索,但不知道它是如何工作的過去^aeio
濾波部分,以得到輔音。
你是說像這樣分裂?
1.9.3-p327 > s = "abcqwertyaeiouvbnmi"
=> "abcqwertyaeiouvbnmi"
1.9.3-p327 > s.split(/([aeiou]+)/)
=> ["", "a", "bcqw", "e", "rty", "aeiou", "vbnm", "i"]
如果是這樣,那麼你可以循環訪問結果數組,替換字符。
s = "iamagoodboy"
v,c = s.chars.partition{|i| ["a","e","i","o","u"].include?(i)}
p v #=> ["i", "a", "a", "o", "o", "o"]
p C#=> ["m", "g", "d", "b", "y"]
現在,您可以根據需要在v
和c
迭代。
String.tr有利於轉換文本:
str = "while searching online, but not sure exactly how it works past the filtering part of ^aeio, to get consonants."
p str.tr('aeiou', '')
#=> "whl srchng nln, bt nt sr xctly hw t wrks pst th fltrng prt f ^, t gt cnsnnts."
p str.tr('^aeiou', '') # the^negates
#=>"ieeaioieuoueeaoioaeieiaoaeiooeooa"
p str.tr('aeiou', 'eioua')
#=>"wholi sierchong unloni, bat nut sari ixectly huw ot wurks pest thi foltirong pert uf ^eiou, tu git cunsunents."
今天,我看到了一個良好的使用'字符串#tr'的。 –
不是,我想。 – steenslag