本文介绍了变量的大写第一个字母的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我在网上搜索过,找不到任何可以帮到我的东西。我想在变量中将每个单词大写的第一个字母设为大写。到目前为止,我已尝试过:
toUpperCase();
没有运气,因为它会对所有字母进行大写。
解决方案
使用用于替换以大写字母开头的小写字母。
var str =hello world; str = str.toLowerCase()。replace(/ \b [az] / g,function(letter){return letter.toUpperCase();});警报(STR); //显示Hello World
编辑:如果你正在处理的不是单词字符,那么以下(更复杂的)正则表达式可能更适合你的目的。
var str =петрданиловичbjörnüberñaqueαλφα; str = str.toLowerCase()。replace(/ ^ [\\\00C0-\ u1FFF \ u2C00-\ uD7FF \ w] | \\ \\ [[\ 0000C0-\ u1FFF \ u2C00-\ uD7FF \ w] / g,function(letter){return letter.toUpperCase();}); alert(str); //显示ПетрДаниловичBjörnÜberÑaqueΑλφα
I have searched over the web can can't find anything to help me. I want to make the first letter of each word upper case within a variable.
So far i have tried:
toUpperCase();
And had no luck, as it uppercases all letters.
解决方案
Use the .replace
function to replace the lowercase letters that begin a word with the capital letter.
var str = "hello world";
str = str.toLowerCase().replace(/\b[a-z]/g, function(letter) {
return letter.toUpperCase();
});
alert(str); //Displays "Hello World"
Edit: If you are dealing with word characters other than just a-z, then the following (more complicated) regular expression might better suit your purposes.
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 Αλφα"
这篇关于变量的大写第一个字母的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!