首页 > 解决方案 > 正则表达式用双换行符分隔段落

问题描述

为作者在 textarea 中添加/删除空行做一个小助手。删除多余行的那个似乎有效:

if(jQuery("#remove_line").prop("checked")){
        conver = conver.replace(/^\s*[\r\n]/gm,'');
    }

但是必须有一个反向的,使任何新行变成双新行(无论是否只有 1 行或什至 3 行新行)。例如这个:

text
text



text

text

应该处理成这样:

text

text

text

text

任何人都可以帮忙吗?提前致谢!

标签: javascriptjqueryregex

解决方案


您可以匹配一个或多个换行符[\r\n]+并替换为 2 个换行符\n\n

const regex = /[\r\n]+/gm;
const str = `text
text



text

text`;

console.log(str.replace(/[\r\n]+/g, `\n\n`));


推荐阅读