要求
把指定的字符串翻译成 pig latin。
Pig Latin 把一个英文单词的第一个辅音或辅音丛(consonant cluster)移到词尾,然后加上后缀 "ay"。
如果单词以元音开始,你只需要在词尾添加 "way" 就可以了。
提示
Array.push()
Array.join()
String.substr()
String.split()
Array.splice()
思路
第一步: 分割字符串为数组
第二步: 判定首字母是是元音字母还是辅音字母,首字母是元音字母直接拼接原字符串 后加“way”
第三步: 首字符是辅音音字母计算辅音或辅音从的长度len
第四步: 取出辅音从放到数组末尾,删除数组前方辅音从
第五步: 将数组拼接为字符串 再跟“ay”拼接 返回最后结果
源代码
function translate(str) {
var reg=new RegExp(/[aeiouAEIOU]/);
var len=0;
var arr=str.split("");//分解字符串
var newarr=[];
if(!reg.test(arr[0])){
//for循环计算出元音字母数
for(var i=0;i<arr.length;i++){
if(!reg.test(arr[i])){
len++;
}
else{
break;
}
}
var subStr=str.substr(0,len); //取出要放到后面的子字符串
arr.splice(0,len);//删除辅音字母
arr.push(subStr);//将辅音子字符串放到数组最后面
str=arr.join("")+"ay";//将数组组合成字符串然后拼接
}
else{
str+="way";//拼接字符串
}
console.log(str);
return str;
}
translate("onsonant");
网友评论