js特定字符串怎么替换数据?
有这样类型的字符串和数据 '端口号为s%-s%',数据为[200, 3000]
替换成端口号为200-3000
,取值为s%,数据为[50]
替换成取值为50
如上 s%的个数是未知的,数据长度和个数是一致的。请问怎么替换?谢谢。
回复
1个回答

test
2024-07-04
正则匹配,然后下标向后移动即可:
const replace = (str, data) => {
let index = 0;
return str.replace(/s%/g, () => {
return data[index++];
});
};
使用:
replace('端口号为s%-s%', [50, 100]); // 端口号为50-100
回复

适合作为回答的
- 经过验证的有效解决办法
- 自己的经验指引,对解决问题有帮助
- 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
- 询问内容细节或回复楼层
- 与题目无关的内容
- “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容