javascript - 如何在上标语法“^(text)”中支持 Markdown 链接语法“[text](link)”?
问题描述
所以我使用Markdown-it作为我的 Markdown 渲染器,并使用markdownitRegexp添加了一些自定义标签。
我的上标语法有问题^(text)
,它以“)”结尾,所以你不能使用链接[text](link)
,因为它们也以它结尾。
我想让它能够毫无问题地处理多个链接:
^(foo doo [bar](https://stackoverflow.com "baz") foo [doo](https://github.com)...)
这就是我现在使用的:
window.markdownitRegexp(
/\^\(([\s\S]+?)[\)]/,
function (match, utils) {
const html = inlineRenderer('supsubscript').render(match[1], env);
return `<sup>${html.replace(/\<p\>|\<\/p\>\s/g, '')}</sup>`;
}
)
解决方案
我最终得到了这个:
\^\(((?:\[[^\]]*\]\([^)]*\)|[\s\S])+?)\)
推荐阅读
- log4j2 - 在 LOG4Js 中转义花括号 - 替换{pattern}{regex}{substitution}
- python - AttributeError:模块“dlib”没有属性“correlation_tracker”
- php - 从数据库中获取和汇总数据 - laravel
- c++ - 如何为 tflite 解释器调用 Flex 委托?
- python - python json正文请求中的德语变音符号
- java - org.eclipse.persistence.exceptions.ConversionException :无法转换为 [class java.util.Date]
- asp.net - 基于 Linq 连接,我收到错误 A second operation started on this context before a previous operation completed
- spring-kafka - spring-kafka 不能与 kafka-cluster 一起使用
- yarnpkg - 纱线升级失败
- .net-core - .Net Core 外键字段始终为空