仕様と根拠
番号の読み方
CSV は RFC 4180 の 2 節に沿って読み、選んだ列の値の末尾に続く数字(15 桁まで)を番号とします。その前の文字(A- や ORD など)は接頭辞で、接頭辞ごとに別の連番として調べます。接頭辞がなく数字だけの値は、接頭辞「(なし)」の連番です。
欠番と重複の定義
接頭辞ごとに、見つかった番号の最小から最大までのあいだで、列に 1 度も現れない整数を欠番とし、連続する欠番は「1005 〜 1007」のように区間にまとめます。同じ番号が 2 回以上現れるものは重複で、その行番号を示します。最小より前、最大より後の番号は、この CSV だけでは本来あったかどうか分からないため調べません。
ゼロ埋めと桁数
001 と 1 は数値として同じ 1 として比べます。同じ接頭辞の番号がすべて同じ桁数なら、結果もその桁数でゼロ埋めして表示します。桁数が混在しているときは、数値として比べたうえで情報として知らせます。
根拠にした仕様・資料
| 仕様・資料 | 確認日 | 使った箇所 |
|---|---|---|
| RFC 4180 Common Format and MIME Type for Comma-Separated Values (CSV) Files | 2026年10月28日 | 2 節の 1〜7(CRLF の行区切り・見出しの行・各行の欄数・二重引用符の囲みと "" のエスケープ) |
指摘の段階
- エラー: 仕様に反していて、正しく読めない・処理できない入力です。
- 警告: 読めるものの、仕様の推奨に反する・矛盾する・意図と違う結果になりやすい入力です。
- 情報: 誤りではありませんが、知っておくとよい扱い(読み飛ばした部分や解釈)です。
入力の扱い(送信しない仕組み)
処理はすべてお使いのブラウザの中で行います。処理の本体はこのサイトから配信する小さなスクリプト(/app.js)で、外部のサービスやライブラリを読み込みません。ページはブラウザに通信を禁止させる設定(Content-Security-Policy の connect-src)つきで配信しており、入力した内容がサーバーや第三者へ送られることはありません。ファイルを選んだ場合も、端末の中で読み込むだけです。
このツールでできないこと(制約)
- 番号は値の末尾の数字だけを読みます。「2026-10-01-0003」のような値では、末尾の 0003 が番号、それより前が接頭辞になり、日付の変わり目で連番がリセットされる運用は別々の接頭辞として扱えません。
- 欠番が本来あるべき番号かどうか(取消・欠品・他システムの番号)は判定できません。表示するのは、列に現れない整数だけです。
- 15 桁を超える数字の並びや、末尾が数字でない値(例: A-12B)は番号として調べず、警告として行番号を示します。
- 全角数字は番号として読みません。半角の数字に直してから貼り付けてください。
ご利用にあたって
- 検査は、貼り付けた CSV に現れる番号だけにもとづきます。抽出条件(期間・店舗)で絞った CSV では、範囲の外の番号が別の抽出に入っているだけの場合があります。
- 大きなファイルはお使いの端末の性能によって処理に時間がかかることがあります。