使用Ruby在YAML文档中搜索/检查值
发布时间:2020-12-17 02:04:08 所属栏目:百科 来源:网络整理
导读:我的目标: 使用ypath / xpath检查yaml文档是否包含特定键的值 使用ypath / xpath选择指定键的值 文件yaml: app: name: xxx version: xxxdescription: author: name: xxx surname: xxx email: xxx@xxx.xx 检查了什么:* 谷歌 stackoverflow Ruby API(YAML :
我的目标:
>使用ypath / xpath检查yaml文档是否包含特定键的值 文件yaml: app: name: xxx version: xxx description: author: name: xxx surname: xxx email: xxx@xxx.xx 检查了什么:* >谷歌 例: Module::Class.select('description/author/name') Module::Class.select('*/name') Module::Class.isset?('*/name') 解决方法
由于没有最新的YPath实现,我建议给ActiveSupport和Nokogiri一个机会:
yml = LOAD_YML_WITH_YOUR_PREFERRED_YAML_ENGINE # ActiveSupport adds a to_xml method to Hash xml = yml.to_xml(:root => 'yaml') doc = Nokogiri::XML(xml) doc.xpath("description/author/name").map do |name| puts [name['key'],name['value']] end (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |