JavaScript Regex 替换 YAML frontmatter

问题描述 投票:0回答:1

我正在构建一个 nodejs 包,它从文件中读取 YAML 前面的内容。我使用 YAML 包获取 YAML,将其转换为 JSON 并对其进行更改。

现在我希望能够替换整个 frontmatter 但找不到 RegEx 来这样做。

templateFile = templateFile.replace(SOME-REGEX-EXPRESSION, YAML.stringify(frontmatter)

我可以在这里使用什么 RegEx 来完成这个?

javascript regex yaml-front-matter
1个回答
1
投票

您可以使用:

/(?<=---\n).*?(?=\n---)/s

细分:

  • (?<=---\n)
    - 正后视匹配
    ---
    后跟新行
  • .*?
    - 懒惰地匹配任何东西
  • (?=\n---)
    - 正面前瞻以匹配
    ---
    前面有新行
  • s
    - 标记点也匹配新行

演示

© www.soinside.com 2019 - 2024. All rights reserved.