gpt4 book ai didi

javascript - 替换第一个括号 - (到最后一个)中所有出现的 ('content' ) 吗?

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

我有一个字符串,可能是:Hello (hiii(1998 overhill) hpp)there。我想删除其中的括号和内容,但保留单词 Hello there

下面是我的代码,但它删除了第一部分:(hiii(1998 overhill) 留下 hpp)

myString = "Hello (hiii(1998 overhill) hpp) there";
myString = myString.replace(/ \([^)]*\)/g, '');

话虽如此,我希望它对所有出现的情况都执行此操作,这就是我提供 /g 的原因,但是我该如何为最后一次出现的 (content) hi) 执行此操作?供以后引用。

所以,如果我有“你好(ddd(dog) kk)和你好(菠萝(g)”是否可以剪掉最后一个括号,所以我留下:你好( ddd(dog) kk) 和 hello 删除 (pineapple(g)?

谢谢!

最佳答案

我找到了两种可能出现您想要的情况的方法。

其中之一就是我在评论中告诉你的:

var myString = 'Hello (ddd(dog) kk) and hello (pineapple(g)';
console.log(myString.replace(/\(.+\)/g, ''));

此操作将从第一个 ( 到最后一个 ) 中删除。

<小时/>

或者递归地删除成对的括号内容:

function removeBracketsContents(str) {
while (str.indexOf('(') > -1 & str.indexOf(')') > -1) {
str = str.replace(/\([^\(\)]+\)/g, '');
}
return str;
}

console.log(removeBracketsContents('Hello (hiii(1998 overhill) hpp) there'));
console.log(removeBracketsContents('Hello (ddd(dog) kk) and hello (pineapple(g))'));

关于javascript - 替换第一个括号 - (到最后一个)中所有出现的 ('content' ) 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40468968/

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