修改函数的每个单词

时间:2013-03-21 03:05:09

标签: javascript string

我要做的是编写一个函数,将字符串中的每个单词修改为piglatin。对于每个单词,它需要根据元音是否以元音开头来改变它。它需要在每个单词的末尾添加辅音,并且每个单词以元音开头,需要添加到最后。最后,对于每个单词,它需要在添加这些sufixx之前将单词的第一个字母放在最后。有什么建议?

function pigLatin(whatWeTitle) {
            var alertThis = " ";
            var whatWeTitle = document.getElementById("isLeaper").value;
            var splitArray = whatWeTitle.split(" ");
            var finalString = "";
            for ( i = 0; i < splitArray.length; i++) {
                finalString += splitArray[i] + "ay ";
            }
            alert(finalString);
        }

1 个答案:

答案 0 :(得分:1)

这看起来很有趣,这是一个基于String.prototype.replace的函数,它可以接受替换函数:

function textToPig(t) {
  var vowels = {a:'a',e:'e',i:'i',o:'o'};

  return t.replace(/\w+/g, function(s){
    var first = s.substring(0,1);
    var rest = s.substring(1);

    return rest + first + (first in vowels? 'ay' : 'way')

  });
}

textToPig('foo bar each other   ') // "oofway arbway acheay theroay   "

这就是你想要的吗?小心连字词。