gpt4 book ai didi

javascript - 做这个正则表达式替换的好方法

转载 作者:行者123 更新时间:2023-11-30 08:59:35 24 4
gpt4 key购买 nike

我正在编写一个 javascript 函数,它接受一个正则表达式和一些元素,它根据这些元素将正则表达式与名称属性相匹配。

假设我通过了这个正则表达式

/cmw_step_attributes\]\[\d*\]/

和一个结构如下的字符串

"foo[bar][]chicken[123][cmw_step_attributes][456][name]"

所有数字都可能不同或缺失。我想将正则表达式与字符串进行匹配,以便将 456 换成另一个数字(会有所不同),例如 789。所以,我想以

"foo[bar][]chicken[123][cmw_step_attributes][789][name]"

正则表达式将匹配字符串,但我不能将整个正则表达式换成 789,因为那样会清除“[cmw_step_attributes][”位。必须有一种干净简单的方法来做到这一点,但我无法理解它。有什么想法吗?

谢谢,马克斯

最佳答案

捕获第一部分并将其放回字符串中。

.replace(/(cmw_step_attributes\]\[)\d*/, '$1789');
// note I removed the closing ] from the end - quantifiers are greedy so all numbers are selected
// alternatively:
.replace(/cmw_step_attributes\]\[\d*\]/, 'cmw_step_attributes][789]')

关于javascript - 做这个正则表达式替换的好方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10416555/

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