使用Javascript RegExp将每个匹配替换为迭代编号

我想用迭代数替换字符串中的空行

例如
更换

串:

"My first line

My second line

My third line"

"
1

My first line

2

My second line

3

My third line"

我可以使用匹配和替换这些行

var newstring = Testvar.replace (/(^|\n\n)/g,"\nhello\n");

但是我正在努力添加一个函数,它会为每个函数添加一个迭代数.

你能帮我吗?

TIA,

导游服务

解决方法

是的,你可以在javascript中做到这一点.你只需要传递一个函数作为第二个参数来替换.
var i = 0;
var newstring = Testvar.replace(/(^|\n\n)/g,function() { return '\n' + (++i) + '\n'; });

函数实际上获取了很多参数,您可以根据这些参数来决定要替换的值,但我们不需要任何参数来完成此任务.

但是,了解它们很好,MDC有一个很棒的documentation on the topic

相关文章

前言 做过web项目开发的人对layer弹层组件肯定不陌生,作为l...
前言 前端表单校验是过滤无效数据、假数据、有毒数据的第一步...
前言 图片上传是web项目常见的需求,我基于之前的博客的代码...
前言 导出Excel文件这个功能,通常都是在后端实现返回前端一...
前言 众所周知,js是单线程的,从上往下,从左往右依次执行,...
前言 项目开发中,我们可能会碰到这样的需求:select标签,禁...