js正则给代码块添加编号

发布: 2019-12-11 14:42:31标签: js基础

js正则给代码块添加编号

01// 替换方法
02function replacer(str = "", name, content) {
03 let i = 1;
04 const n = m => `<em class="row-num">${m > 9 ? m : "0" + m}</em>`;
05 const c = content.replace(/\n/g, function() {
06 i += 1;
07 return `</p><p class="code-row">${n(i)}`;
08 });
09 const res = `<p class="code-row">${n(1)}${c}</p>`;
10 return `<code${name}>${res}</code>`;
11}
12
13// 添加编号
14export default function codeLines(codeStr = "") {
15 return codeStr.replace(/<code([^>]*)>([\s\S]*?)<\/code>/g, replacer);
16}
17
复制代码