挑战:
参考:字符串移动插入算法挑战
把指定的字符串翻译成 pig latin。
Pig Latin 把一个英文单词的第一个辅音或辅音丛(consonant cluster)移到词尾,然后加上后缀 “ay”。
如果单词以元音开始,你只需要在词尾添加 “way” 就可以了。
输入字符串保证是英文单词全部小写。
例如:
translate(“california”) 应该返回 “aliforniacay”。
translate(“paragraphs”) 应该返回 “aragraphspay”。
translate(“glove”) 应该返回 “oveglay”。
translate(“algorithm”) 应该返回 “algorithmway”。
translate(“eight”) 应该返回 “eightway”。
答案:
方法 | 描述 |
---|---|
indexOf() | 返回某个指定的字符串值在字符串中首次出现的位置。 |
substr() | 从起始索引号提取字符串中指定数目的字符。 |
function translate(str) {
var vowel = ["a", "e", "i", "o", "u"];
if (vowel.indexOf(str[0]) != -1) {
return str + "way";
}
while (vowel.indexOf(str[0]) == -1) {
str = str.substr(1) + str.substr(0, 1);
}
return str + "ay";
}
translate("consonant");
运行结果:
onsonantcay
在线测试: