我正在制作一些需要使用markdown将缩进的段落转换为代码块的东西。这就是我的意思:
This is normal text, nothing to worry about.
const normalFunction = (...args) => {
return ...args;
}
Please turn ^ into codeblock. Thx
我希望将其转换为
This is normal text, nothing to worry about.
```js
const normalFunction = (...args) => {
return ...args;
}
```
Please turn ^ into codeblock. Thx
其他所有事件都是这样的。我已经为此尝试了许多不同的RegEx,并找到了一个我认为可行的,但它适用于PHP,我无法将其转换为JavaScript RegEx。
使用ES6很好,我推荐它,因为它有更多的功能。
我目前使用的RegEx是/( {4}[\n\r\s\S]+;)/gi
,但是如果有多个代码块,它会选择所有内容,并且如果它是评论并且它不以{{1结尾,则不会选择某些内容}}
答案 0 :(得分:0)
好的,这是我迟到的自我回答。
我使用的是NodeJS和class Person {
public:
const std::string name;
Person(const std::string& s): name(s) {}
void dump(void) const {
cout << name << endl;
//cout << &name << endl;
}
};
NPM模块。
显然,to-markdown
支持过滤器将HTML标记转换为您想要的任何内容。
我为标记to-markdown
添加了一个过滤器,因此它会添加代码块所需的降价。
这是我的最终代码:
pre
我在那里使用了几个RegEx来替换return toMarkdown(str, {
gfm: true,
converters: [{
filter: "pre",
replacement: content => `\`\`\`${lang.toLowerCase()}\n${content.replace(/<\/?code( \S+)?>/g, ``)}\n\`\`\``,
}],
});
标记内的<code lang=##>
和</code>
标记。
我希望这有帮助。对不起,我不知道我们是否必须为自己写一个答案。
编辑:我知道如果这与RegEx无关,如果那是你正在寻找和希望的,我道歉。