一尘不染

如何仅替换捕获的组?

javascript

我在字符串前后有HTML代码:

name="some_text_0_some_text"

我想将替换为0!NEW_ID!

所以我做了一个简单的正则表达式:

.*name="\w+(\d+)\w+".*

但是我看不到如何专门替换捕获的块。

有没有办法用其他字符串替换捕获的结果($ 1)?

结果将是:

name="some_text_!NEW_ID!_some_text"

阅读 237

收藏
2020-05-01

共1个答案

一尘不染

一种解决方案是为前面和后面的文本添加捕获:

str.replace(/(.*name="\w+)(\d+)(\w+".*)/, "$1!NEW_ID!$3")
2020-05-01