gpt4 book ai didi

javascript - 在 JavaScript 中将连字符的名称大写

转载 作者:行者123 更新时间:2023-11-28 11:51:49 25 4
gpt4 key购买 nike

我需要在 javascript 中将名称大写,到目前为止我已经在 SO 上找到了这些方法:

// doesn't capitalize first letter after hyphen -> gives Bjørn-martin
str.replace(/\w\S*/g, function (txt) { return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase(); });

// capitalizes after hyphen, but also after funny Norwegian characters (æøå) -> gives BjøRn-Martin
str.replace(/\b[\w']+\b/g, function (txt) { return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase(); });

// same as first
str = str.toLowerCase().replace(/^[\u00C0-\u1FFF\u2C00-\uD7FF\w]|\s[\u00C0-\u1FFF\u2C00-\uD7FF\w]/g, function(letter) {
return letter.toUpperCase();
});

当尝试将 bjørn-martin 大写时,它们都无法同时处理有趣的挪威字符和连字符。

我不太精通正则表达式,想知道是否有人可以为我指出正确的方向,以便将 bjørn-martin 正确地大写为 Bjørn-Martin .

最佳答案

这应该适合您的需求:

var capitalized = input.replace(/(^|[\s-])\S/g, function (match) {
return match.toUpperCase();
});

关于javascript - 在 JavaScript 中将连字符的名称大写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35504848/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com