用于变音符号的JavaScript标题案例(非ASCII)

时间:2013-03-01 03:47:34

标签: javascript case title

是否可以创建一个可以将字符串转换为标题大小写的JavaScript函数,但是可以使用非ASCII(Unicode)字符的函数?例如,使用以下字符:

Áá  Àà  Ăă  Ắắ  Ằằ  Ẵẵ  Ẳẳ  Ââ  Ấấ  Ầầ  Ẫẫ  Ẩẩ  Ǎǎ  Åå  Ǻǻ  Ää  Ǟǟ  Ãã
Éé  Èè  Ĕĕ  Êê  Ếế  Ềề  Ễễ  Ểể  Ěě  Ëë  Ẽẽ  Ėė  Ȩȩ  Ḝḝ  Ęę  Ēē  Ḗḗ  Ḕḕ
etc.

例如,如果字符串是“andersångström”,它应该将其转换为“AndersÅngström”。 already exists它将转变为“AndersåNgström”的脚本。

2 个答案:

答案 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