Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript中变音符号的标题大小写(非ASCII)_Javascript_Case_Title - Fatal编程技术网

JavaScript中变音符号的标题大小写(非ASCII)

JavaScript中变音符号的标题大小写(非ASCII),javascript,case,title,Javascript,Case,Title,是否可以创建一个JavaScript函数,该函数可以将字符串转换为标题大小写,但不能使用非ASCII(Unicode)字符?例如,使用以下字符: Áá Àà Ăă Ắắ Ằằ Ẵẵ Ẳẳ Ââ Ấấ Ầầ Ẫẫ Ẩẩ Ǎǎ Åå Ǻǻ Ää Ǟǟ Ãã Éé Èè Ĕĕ Êê Ếế Ềề Ễễ Ểể Ěě Ëë Ẽẽ Ėė Ȩȩ Ḝḝ Ęę Ēē Ḗḗ Ḕḕ etc. 例如,如果字符串是“andersångström”,则应将

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

Áá  Àà  Ăă  Ắắ  Ằằ  Ẵẵ  Ẳẳ  Ââ  Ấấ  Ầầ  Ẫẫ  Ẩẩ  Ǎǎ  Åå  Ǻǻ  Ää  Ǟǟ  Ãã
Éé  Èè  Ĕĕ  Êê  Ếế  Ềề  Ễễ  Ểể  Ěě  Ëë  Ẽẽ  Ėė  Ȩȩ  Ḝḝ  Ęę  Ēē  Ḗḗ  Ḕḕ
etc.
例如,如果字符串是“andersångström”,则应将其转换为“andersångström”。
它将转换为“AndersåNgström”的脚本

Javascript的内置转换是支持Unicode的,例如
“å”.toUpperCase()
返回
“Å”
。所以我不确定你的“现有脚本”做错了什么


但是,如果您需要完全支持Unicode的大小写转换(或其他Unicode支持),您可能需要查看

Javascript的内置转换支持Unicode,例如
“å”.toUpperCase()
返回
“Å”
。所以我不确定你的“现有脚本”做错了什么

但是,如果您需要完全支持Unicode的大小写转换(或其他Unicode支持),您可能需要查看

试试这个:

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"
试试这个:

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"

'å'.toUpperCase()
对我有用…是的,toUpperCase()对我也有用,但Title-Case函数对以“å”开头的单词不起作用,因为JavaScript无法将其正确地包含在“整个单词”中(\w)哦,我明白了,检查我的答案,在没有
\w
'
对我有用…是的,toUpperCase()对我也有用,但Title-Case函数对以“å”开头的单词不起作用,因为JavaScript无法将其正确地包含在“整个单词”中(\w)哦,我明白了,检查我的答案,它仍然可以在没有
\w
的情况下完成。谢谢。无论如何,我需要一个Title-Case函数(上面链接中的toTitleCase()的更好版本),它也可以用于非ASCII。Title-Case函数是大写和整词匹配函数的组合。谢谢。无论如何,我需要一个Title-Case函数(上面链接中的toTitleCase()的更好版本),它也可以用于非ASCII。Title-Case函数是大写和整词匹配函数的组合。抱歉,我刚刚注意到它不适用于包含破折号(“-”)的名称,例如“luise meyer schützmeister”。它将把它变成“路易斯·梅耶·舒茨迈斯特”。有没有可能改进它?要支持破折号和单引号,请将/[^\s]+/g更改为/[^-'\s]+/g。我刚刚注意到它不适用于包含破折号(“-”)的名称,例如“luise meyer schützmeister”。它将把它变成“路易斯·梅耶·舒茨迈斯特”。有没有可能改进它?要支持破折号和单引号,请将/[^\s]+/g更改为/[^-'\s]+/g