gpt4 book ai didi

javascript - 使用正则表达式 replace() 方法一步删除定界符并将第一个字母大写

转载 作者:行者123 更新时间:2023-11-30 09:47:56 26 4
gpt4 key购买 nike

在尝试删除所有下划线分隔符并将首字母转换为大写时,我开发了以下函数(也可在此代码笔中使用:http://codepen.io/PiotrBerebecki/pen/RRKjex)。

目标:

给定 'this_is_some_text' 作为输入字符串,该函数应返回 'ThisIsSomeText'

工作 JS 代码:

function capitaliseFirst(str) {
var firstCapital = str.replace(/[a-z]+/g, x => x[0].toUpperCase() + x.slice(1));
return firstCapital.replace(/_/g, '')
}

console.log( capitaliseFirst('this_is_some_text') ); // returns ThisIsSomeText

上面的函数实现了预期的目标,但我想重构它,以便只需要一个 replace() 方法。目前我被困在下面的代码中。您知道如何完成吗?

不工作(还)JS代码:

function capitaliseFirst2(str) {
return str.replace(/(?:_)?([a-z])/g, '$1')
}

console.log( capitaliseFirst2('some_other_text') ); // should return SomeOtherText

最佳答案

这是一种方法:

function capitaliseFirst2(str) {
return str.replace(/(?:_+|^)(.)/g, (m0, m1) => m1.toUpperCase());
}

我们匹配 1 个或多个下划线或字符串开头之后的每个字符并将其大写。

关于javascript - 使用正则表达式 replace() 方法一步删除定界符并将第一个字母大写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38026802/

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