用于 Markdown 中代码防护的 JavaScript 正则表达式

标签 javascript regex markdown

我正在尝试在 showdown.js 中添加对代码防护的支持,但我对正则表达式仍然是个菜鸟。如果你不知道的话,代码防护是这样的:

```javascript
alert('hello world');
```

然后它会创建类似的东西:

<div class="highlight">
  <pre lang="javascript">
    alert('hello world');
  </pre>
</div>

如何在 JavaScript 风格的正则表达式中捕获 ```(anything)\n(anything)``` ?

最佳答案

r = /`{3}(?:(.*$)\n)?([\s\S]*)`{3}/m;
r.exec(yourSampleString); // => [..., "javascript", "alert('hello world');\n"]
r.exec('```puts "ok"```'); // => [..., undefined, "puts \"ok\""]
r.exec('```foo```bar```'); // => [..., undefined, "foo```bar"]

关于用于 Markdown 中代码防护的 JavaScript 正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8333010/

相关文章:

javascript - 克隆kendo DataSource会删除CRUD吗?

javascript - 为前端组件实现树形数据结构

Java - 正则表达式

语法类似于 GitHub Flavored Markdown 的 Ruby markdown 解释器?

r - 在RStudio中使用knitr markdown调用两个不同版本的R(2.15.3和3.0.2)

css - 将 css 中生成的圆圈并排放置,而不使用 markdown 文件中的表格

javascript - JQuery,使用结果的新选择

javascript - 保留动态按钮初始属性的内存

regex - 从命令响应中提取数据并将其存储在变量中

regex - 正则表达式从税号中删除破折号