大写所有单词

时间:2016-09-09 13:38:32

标签: javascript regex

如何将字符串中的所有单词大写除去一些硬编码的情况?例如: 要排除的词:“de”,“la” 输入:“DEGAS-URB.JARDÍNDELAS AVENIDAS” 输出:“Degas-Urb.Jardíndelas Avenidas”

1 个答案:

答案 0 :(得分:1)

您可以对每个单词使用此功能:

function toTitleCase(str)
{
    // Protected words that you don't want to Titlecase
    var dontChangeTheseWords = ["de", "la"];
    if(dontChangeTheseWords.indexOf(str) > -1)
    {
        return str;
    }

    return str.replace(/\w\S*/g, function(txt){return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase();});
}