是否可以创建一个可以将字符串转换为标题大小写的JavaScript函数,但是可以使用非ASCII(Unicode)字符的函数?例如,使用以下字符:
Áá Àà Ăă Ắắ Ằằ Ẵẵ Ẳẳ Ââ Ấấ Ầầ Ẫẫ Ẩẩ Ǎǎ Åå Ǻǻ Ää Ǟǟ Ãã
Éé Èè Ĕĕ Êê Ếế Ềề Ễễ Ểể Ěě Ëë Ẽẽ Ėė Ȩȩ Ḝḝ Ęę Ēē Ḗḗ Ḕḕ
etc.
例如,如果字符串是“andersångström”,它应该将其转换为“AndersÅngström”。 already exists它将转变为“AndersåNgström”的脚本。
答案 0 :(得分:16)
试试这个:
var str = 'anders ångström';
str = str.replace(/[^\s]+/g, function(word) {
return word.replace(/^./, function(first) {
return first.toUpperCase();
});
});
console.log(str); //=> "Anders Ångström"
答案 1 :(得分:0)
Javascript的内置转换支持Unicode,例如"å".toUpperCase()
返回"Å"
。所以我不确定你的“现有脚本”做错了什么。
但是,如果您需要完全支持Unicode的案例转换(或其他Unicode支持),您可能需要查看unicode.js。