Javascript 将双车厢 returns 替换为单车厢 returns
Javascript replace double carriage returns with single carriage returns
只是想在 Javascript 中用单车厢 returns 替换双车厢 returns。详情如下:
我在 Google 和 Stack Overflow 上搜索了这个问题,我发现了一堆用一个字符串替换另一个字符串的例子,但不是双回车 returns 与单回车returns(实质上是消除字符串中的空行)。我认为这个案例可能有些奇怪。
这是我需要的示例:
替换:
Line 1
Line 2
Line 3
Line 4
与:
Line 1
Line 2
Line 3
Line 4
我尝试了以下代码行(单独尝试,而不是一次全部):
stringReplace = stringReplace.replace(/\n\n/g, '\n');
stringReplace = stringReplace.replaceAll(/\n\n/g, '\n');
stringReplace = stringReplace.split('\n\n').join('\n');
我输入的一个例子是这样的(一行四个空行):
Line 1
Line 2
Line 3
Line 4
变成了(还是两行空行):
Line 1
Line 2
Line 3
Line 4
但我尝试用完全不同的东西替换双马车 return,在本例中是双等号:
stringReplace = stringReplace.replace(/\n\n/g, '==');
我输入:
Line 1
Line 2
Line 3
Line 4
你猜怎么着?按计划工作。
Line 1===
Line 2====
Line 3==
Line 4
任何人都知道出了什么问题吗?谢谢大家!
你应该匹配两个或更多个换行符(不是只是两个,而是两个或更多), 并替换为单个换行符:
const input = `Line 1
Line 2
Line 3
Line 4`;
const output = input.replace(/\n{2,}/g, '\n');
console.log(output);
另一种写法:\n\n+
而不是\n{2,}
(两种模式都匹配两个或多个换行符)
只是想在 Javascript 中用单车厢 returns 替换双车厢 returns。详情如下:
我在 Google 和 Stack Overflow 上搜索了这个问题,我发现了一堆用一个字符串替换另一个字符串的例子,但不是双回车 returns 与单回车returns(实质上是消除字符串中的空行)。我认为这个案例可能有些奇怪。
这是我需要的示例:
替换:
Line 1
Line 2
Line 3
Line 4
与:
Line 1
Line 2
Line 3
Line 4
我尝试了以下代码行(单独尝试,而不是一次全部):
stringReplace = stringReplace.replace(/\n\n/g, '\n');
stringReplace = stringReplace.replaceAll(/\n\n/g, '\n');
stringReplace = stringReplace.split('\n\n').join('\n');
我输入的一个例子是这样的(一行四个空行):
Line 1
Line 2
Line 3
Line 4
变成了(还是两行空行):
Line 1
Line 2
Line 3
Line 4
但我尝试用完全不同的东西替换双马车 return,在本例中是双等号:
stringReplace = stringReplace.replace(/\n\n/g, '==');
我输入:
Line 1
Line 2
Line 3
Line 4
你猜怎么着?按计划工作。
Line 1===
Line 2====
Line 3==
Line 4
任何人都知道出了什么问题吗?谢谢大家!
你应该匹配两个或更多个换行符(不是只是两个,而是两个或更多), 并替换为单个换行符:
const input = `Line 1
Line 2
Line 3
Line 4`;
const output = input.replace(/\n{2,}/g, '\n');
console.log(output);
另一种写法:\n\n+
而不是\n{2,}
(两种模式都匹配两个或多个换行符)