仅从 JS 中的文件中获取 YAML 文本

Grabbing only the YAML text from a file in JS

本文关键字:YAML 文本 获取 JS 仅从 文件      更新时间:2023-09-26

假设我有一个文件,其中随机文本与yaml文本混合在一起。yaml 文本始终介于 ---... 之间。

目标:我的目标是获取一个字符串(取自这样的文件):

---
some: "yaml"
some: "more yaml"
...
Some random text that's not yaml.
---
more: "yaml"
...

并输出一个包含 yaml 部分(包括---...分隔符)的字符串:

---
some: "yaml"
some: "more yaml"
...    
---
more: "yaml"
...

如何做到这一点?

这可以通过 String.prototype.match + Array.prototype.join 轻松完成:

function extractYaml(string) {
    return string.match(/(---(.|'n)*?'.'.'.'n)/g).join('');
}