題目來自《Rust 程序設(shè)計語言》第 8 章 常見集合
要求
將字符串轉(zhuǎn)換為 Pig Latin [1] 胖腾,也就是每一個單詞的第一個輔音字母被移動到單詞的結(jié)尾并增加「ay」烟零,所以「first」會變成「irst-fay」。元音字母開頭的單詞則在結(jié)尾增加「hay」(「apple」 會變成「apple-hay」)咸作。
代碼實現(xiàn)
fn main() {
println!("{}", pig_latin(&String::from("first")));
println!("{}", pig_latin(&String::from("apple")));
}
fn pig_latin(s: &String) -> String {
let v = vec!["a", "e", "i", "o", "u"];
let h = &s[0..1];
let e = &s[1..];
match v.contains(&h) {
true => format!("{}-{}", s, "hay"),
false => format!("{}-{}{}", e, h, "ay"),
}
}
-
Pig Latin(或譯兒童黑話锨阿、豬式拉丁話)是一種英語語言游戲,形式是在英語上加上一點規(guī)則使發(fā)音改變记罚。據(jù)說是由在德國的英國戰(zhàn)俘發(fā)明來瞞混德軍守衛(wèi)的墅诡。Pig Latin 于 1950 年代和 1960 年代在英國利物浦達到顛峰,各種年紀和職業(yè)的人都有使用烟馅。Pig Latin 多半被兒童用來瞞著大人秘密溝通,有時則只是說著好玩寡润。雖然是起源于英語的游戲,但是規(guī)則適用很多其他語言变抽。——維基百科 ?