我完全不知道怎么写这个正则表达式。基本上,我需要在这里用一个<p></p>
标记 Package 每一行,用一个<p><br /></p>
Package 每一个双新行。假设我有以下字符串:
Hello World\n\nFoo Bar\nBas Baz
我需要写一个输出,将其格式化为以下格式:
<p>Hello World</p>
<p><br /></p>
<p>Foo Bar</p>
<p>Bas Baz</p>
现在我只有这个但这个不管用它不使用<p>
标记 Package 单行
function textToHtml(text) {
text = text.replace(/\n\n/g, '<p><br /></p>');
return text;
}
---
textToHtml('Hello World\n\nFoo Bar\nBas Baz')
// 'Hello World<p><br /></p>Foo Bar\nBas Baz'
如果你能在正确的方向上做出任何努力,
3条答案
按热度按时间lxkprmvk1#
inn6fuwd2#
你不需要使用regex:
此外,正如你在jsperf benchmark上看到的,没有regex的版本更快:
sc4hvdpw3#
以下只是一个“轻推”,本身并不完整。它不会替换文本中的换行符,而只是展示了如何使用
.+
来匹配一个或多个非换行符来换行。替换字符串中的
$&
表示整个匹配。无论如何,我推荐Sandeep Singh的方法。
完整的解决方案: