gpt4 book ai didi

javascript - 大写括号内第一个单词的首字母

转载 作者:行者123 更新时间:2023-12-02 16:19:33 25 4
gpt4 key购买 nike

我想把括号内每个字符串的第一个字母大写...

如果我们有这个字符串:

const text = 'This [forest or jungle] is [really] beautiful';

期望的结果是“这 [Forest or jungle] is [Really] beautiful”

到目前为止:

我有大写函数:

function capitalize(string) {
return string.charAt(0).toUpperCase() + string.slice(1);
}

这里我们有这个正则表达式代码来选择括号内的字符串:

/(?<=\[)(.*?)(?=\])/g

请帮忙

最佳答案

你可以使用

text = text.replace(/(?<=\[)[a-z](?=[^\][]*])/g, (x) => x.toLocaleUpperCase())
// OR
text = text.replace(/(?<=\[)\p{Ll}(?=[^\][]*\])/gu, (x) => x.toLocaleUpperCase())

参见 regex demo/regex demo #2 . 详细信息:

  • (?<=\[) - 与紧接在 [ 之前的位置相匹配的正后视字符
  • [a-z] - 一个小写的 ASCII 字母
  • \p{Ll} - 任何 Unicode 小写字母
  • (?=[^\][]*\]) - 需要除 [ 以外的任何零个或多个字符的正向前瞻。和 ]然后是 ]紧靠当前位置的右侧。

查看 JavaScript 演示:

const text = 'This [forest or jungle] is [really] beautiful';
console.log( text.replace(/(?<=\[)[a-z](?=[^\][]*])/g, (x) => x.toLocaleUpperCase()) )

关于javascript - 大写括号内第一个单词的首字母,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65835371/

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