概要
YAMLについて学びます
入門の入門なので簡潔にまとめます
Yamlとは
YAML Ain’t a Markup Language :YAMLはマークアップ言語ではないの意味
構造化されたデータを表現するためのデータ記法
似たようなものにはJSONやXMLなどがある
YAMLはどのような時に使うか
- 各種設定ファイル
- データ保存用・シリアライゼーション用
- データ交換用フォーマット
- ログファイル
XMLと比べた時の利点
- 読みやすい (インデントでデータを階層化している)
- 書きやすい (XMLとは違って終了タグがない)
- わかりやすい (配列、ハッシュ、スカラーだけで表すので人間にとって理解しやすい)
Yamlをとりあえず書いてみる
まずはYAMLファイルの準備から
$ cat data.yml # シャープでコメントもできるよ # -とd1の間の空白は必須 - d1 - d2 - d3
YAMLをRubyを使って解析する
$ cat parse.rb require 'yaml' d = YAML.load_file('data.yml') p d
実行してみる
$ ruby parse.rb ["d1", "d2", "d3"]
YAMLのファイルが配列として出力されている
YAMLの書き方
YAMLは主にマッピング(ハッシュのこと)とシーケンス(配列のこと)の組み合わせでデータを表現する
マッピング
サンプル
$ cat data.yml # 字下げをすると入れ子することができる # タブは× 必ず空白で # 基本は空白2文字 - d1 - - x1 - x2 - d3
実行
$ ruby parse.rb ["d1", ["x1", "x2"], "d3"]
シーケンス
サンプル
$ cat data.yml # key: value name: tomsato emails: main: hoge@gmail.com sub: hoge-sub@gmail.com
実行
$ ruby parse.rb {"name"=>"tomsato", "emails"=>{"main"=>"hoge@gmail.com", "sub"=>"hoge-sub@gmail.com"}}
コメントを書く
コメント一覧