住所の中の改行を残して行末だけ変える
二重引用符で囲まれた住所の中に改行がある CSV です。行末は LF に変えつつ、値の中の改行はそのまま残す境界の例です。
入力
CSV
id,addr 1,"東京都 千代田区" 2,大阪府
そろえる改行コード
LF(Mac・Linux)
引用符の中の改行
そのまま残す(値の一部)
最後の行の改行
そのまま
区切り文字
カンマ(,)
結果
エラー 0 件・警告 0 件・情報 2 件
指摘(エラー・警告・情報)
- 情報 全体 行末の改行 3 か所を CRLF から LF に変えました。
- 情報 引用符の中 二重引用符で囲んだ値の中の改行 1 か所(CRLF 1・LF 0・CR 0)は、値の一部なので変えていません(RFC 4180 2 節の 6)。
| 変換後の改行 | LF |
|---|---|
| 行末の改行(変換前) | CRLF 3・LF 0・CR 0 |
| 引用符の中の改行 | 1 か所(変えていない) |
改行をそろえた CSV
id,addr 1,"東京都 千代田区" 2,大阪府
検算(この結果になる理由)
引用符の外の行末は CRLF が 3 か所で LF に変わります。引用符の中の CRLF 1 か所は RFC 4180 2 節の 6 により値の一部なので、そのまま残り、出力には CRLF と LF が両方含まれます。
判定の根拠は仕様と根拠に、仕様の出典とともにまとめています。自分の入力で試すにはツールをお使いください。
このツールの制約
- 二重引用符の読み方は RFC 4180 の規則に沿った簡易的なもので、値の先頭の二重引用符だけを囲みの開始として扱います。引用符の使い方が壊れた CSV では、改行を変える範囲が意図と違うことがあります。
- 文字コードは変換しません。UTF-8 以外のファイルをテキストとして読み込むと文字化けするため、先に UTF-8 で保存し直してください。
- 列の数・空欄・重複行の検査はしません。それらを調べるときは、列の揃いを検査する別の道具を使います。
- ファイルは端末の中で読み込み、結果をコピーかダウンロードで取り出します。元のファイルを直接書き換えることはしません。
ご利用にあたって
- 改行をそろえても、取り込み先が求める列の順序・文字コード・必須項目まで満たすとは限りません。取り込み先の仕様も確認してください。
- 大きなファイルはお使いの端末の性能によって処理に時間がかかることがあります。