如果你有一个名为的文件example.yaml
包含以下内容:
- subject: maths
.
我怎么抓住字符串- subject
?
我已经可以阅读该文件的内容,但想知道如何从中获取特定的字符串.
注意:我知道正则表达式可能有所帮助,但从未使用它,并会感谢任何帮助.
snakeyaml是一个解析YAML文件的库.易于在groovy中使用.
更新:将示例变量的类型更改为List,因为示例文件的顶级元素是集合
@Grab('org.yaml:snakeyaml:1.17') import org.yaml.snakeyaml.Yaml Yaml parser = new Yaml() List example = parser.load(("example.yaml" as File).text) example.each{println it.subject}
关于snakeyaml的完整文档:
https://bitbucket.org/asomov/snakeyaml/wiki/Documentation
FWIW,即将到来的(在撰写本文时)Groovy 3.0版已直接支持yaml:http : //docs.groovy-lang.org/next/html/api/groovy/yaml/package-summary.html与传统YamlSlurper / YamlBuilder组合您始终可以切换到此尚未正式发布的版本。