元Webデザイナー兼コーダーの備忘録

ウェブデザインやプログラミング、ブログのカスタマイズなどについてアウトプットしています。

 メニュー

» HTML入門のまとめはこちらです。

YAML入門:改行を含むデータの扱い

データの中に改行を含める場合、その扱いをどのようにするのかで記法が微妙に変わります。また、改行をスペースに変換できますが、最後の改行をどのように扱うでこちらも微妙に記法が変わります。なお、この記事はドットインストールというプログラミング学習サービスの内容を参考にしています。

作成するファイル

  • parse.rb
  • data.yml:データファイル

ファイルをそれぞれ以下のように作成します。

# parse.rb
require 'yaml'

emails = YAML.load_file('data.yml')

p emails
# data.yml
this
is
a
pen.

以下のコマンドで出力を確認します。改行が含まれないことを確認できます。

ruby parse.rb
"this is a pen."

改行を含むデータの記法

改行を含むデータの記法について見ていきます。「|」と「字下げ」で表現します。

最終行の改行を保持:|

- |
  this
  is
  a
  pen.

以下のコマンドで出力を確認します。

ruby parse.rb
["this\nis\na\npen.\n"]

最終行以降の改行も保持する:|+

- |+
  this
  is
  a
  pen.

以下のコマンドで出力を確認します。

ruby parse.rb
["this\nis\na\npen.\n\n"]

最終行の改行を保持しない:|-

- |-
  this
  is
  a
  pen.

以下のコマンドで出力を確認します。

ruby parse.rb
["this\nis\na\npen."]

改行をスペースに変更する記法

改行をスペースに変更する記法について見ていきます。「>」と「字下げ」で表現します。

途中の改行をスペースに変換、最終行の改行を保持:>

- >
  this
  is
  a
  pen.

以下のコマンドで出力を確認します。

ruby parse.rb
["this is a pen.\n"]

途中の改行をスペースに変換、最終行以降の改行も保持:>+

- >+
  this
  is
  a
  pen.

以下のコマンドで出力を確認します。

ruby parse.rb
["this is a pen.\n"]

途中の改行をスペースに変換、最終行の改行は保持しない:>-

- >-
  this
  is
  a
  pen.

以下のコマンドで出力を確認します。

ruby parse.rb
["this is a pen."]

まとめ

改行の扱いについて見ていきました。微妙に記法が違うので、違いを理解して使い分けられると良いです。

参考サイト

YAML入門のまとめ記事なら... » YAML入門まとめ

» HTML入門のまとめはこちらです。