我在网上搜索过,找不到任何可以帮助我的东西。我想在变量中将每个单词的首字母大写。
到目前为止我已经尝试过:
toUpperCase();
我运气不好,因为它把所有字母都大写了。
最佳答案
使用 .replace函数将单词开头的小写字母替换为大写字母。
var str = "hello, world!";
str = str.toLowerCase().replace(/\b[a-z]/g, function(letter) {
return letter.toUpperCase();
});
alert(str); //Displays "Hello, World!"
如果您处理的不仅仅是 a-z 以外的单词字符,那么以下(更复杂的)正则表达式可能更适合您的目的。
var str = "петр данилович björn über ñaque αλφα";
str = str.toLowerCase().replace(/^[\u00C0-\u1FFF\u2C00-\uD7FF\w]|\s[\u00C0-\u1FFF\u2C00-\uD7FF\w]/g, function(letter) {
return letter.toUpperCase();
});
alert(str); //Displays "Петр Данилович Björn Über Ñaque Αλφα"
关于javascript - 变量首字母大写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5122402/