如何string#replace使用正则表达式转换以下内容
# title 1
# title 2
# title 3
到
<ul>
<li>title 1</li>
<li>title 2</li>
<li>title 3</li>
</ul>
答案 0 :(得分:1)
您可以使用两个 String#replace
方法
var div = document.getElementById('content');
div.innerHTML = div.innerHTML
// wrap all elements with ul
.replace(/(((?:^|\n)\s*)[\*#](.*))+/g, '<ul>$&\n</ul>')
// wrap all line with li
.replace(/((?:<ul>\n?|\n)\s*)[\*#](.*)/g, '$1<li>$2</li>');
<div id="content">
# title 1
# title 2
# title 3
</div>