メインコンテンツへスキップ
SubtitleMatrix

SRT を CSV に変換

形式変換SubRip(SRT)
字幕テキストを貼り付けることもできます

この変換で変わること

この方向では何も失われません。元の形式のすべての機能に、変換先での行き先があります。

この一覧は、読み込んだファイルではなく、この2つの形式の機能対応表から作られています。形式としては許されているが対応表が扱っていない機能を使っている場合、そのファイルではさらに多くが失われることがあります。

このページは字幕を表計算ソフトの形で書き出します。start、end、text の 3 列で、1 字幕が 1 行です。時刻はカンマではなくドットで書き、00:00:01.000 になります。カンマはフィールドの区切りなので、SRT のまま書くと行が 3 列に割れて後ろがずれるためです。

カンマや改行を含むテキストは CSV の規格どおり引用符で囲むので、2 行の字幕は引用された 1 セルの中の改行として残ります。開始と終了の両方を書くことが、表として書き出す価値になります。時刻で並べ替え、重なりを探し、列をコピーし、字幕編集より表計算が得意な人に渡せます。

編集は両方向に効きます。CSV から SRT のページが見出しで列を読み取って戻せるので、表計算は行き止まりではなく仕事の一部にできます。ファイルはブラウザ内で変換されます。

例

典型的な SRT ファイルを CSV に変換した例

入力

1
00:00:01,000 --> 00:00:03,500
Hello there.

2
00:00:03,500 --> 00:00:06,000
<i>Whispering</i> now.
And a second line.

3
00:00:06,000 --> 00:00:09,250
<b>Bold</b> statement.

出力

start,end,text
00:00:01.000,00:00:03.500,Hello there.
00:00:03.500,00:00:06.000,"<i>Whispering</i> now.
And a second line."
00:00:06.000,00:00:09.250,<b>Bold</b> statement.

ここでは何も失われません。左右を 1 行ずつ比べてください。

崩れた SRT 入力を CSV に変換した例

入力

1
0:00:01,00 --> 0:00:03,500
<B>Bold</B> and <I>italic</I>.


2
00:00:03,500 --> 00:00:06,000


3
00:00:08,000 --> 00:00:09,000
Last one.

出力

start,end,text
00:00:01.000,00:00:03.500,<b>Bold</b> and <i>italic</i>.
00:00:03.500,00:00:06.000,
00:00:08.000,00:00:09.000,Last one.

実ファイルの傷み方の例です。改行の混在、余分な空白、空のフィールドが含まれます。上の整った例と比べると、パーサーがどこまで許容するかが分かります。

よくある質問

SRT を CSV にしたときの列は何ですか?

start、end、text の順で、見出し行が付きます。表を読む側は見出しで列を判断するので、見出しの名前を変えても変換の結果は変わりません。

SRT の時刻が CSV でカンマでなくドットなのはなぜですか?

カンマがフィールドの区切りだからです。SRT の書き方のままでは 2 つのフィールドとして読まれ、各行が見出しより 1 列多くなって表が壊れます。ドットなら引用符なしでも値が曖昧になりません。

SRT の 2 行の字幕は CSV でどう書かれますか?

引用符で囲まれた 1 セルの中の改行として書かれます。表計算ソフトでは 2 行のセルとして表示され、2 行には分かれません。

SRT から CSV でタイムラインは失われますか?

失われません。開始と終了の両方が表に入るため、変換は可逆です。言葉だけが欲しいときのプレーンテキスト出力とは、ここが違います。

CSV に編集して SRT に戻せますか?

戻せます。CSV から SRT のページは見出しで表を読むので、行を並べ替え、時刻を直し、誤字を直し、行を足してから字幕ファイルに戻せます。

関連ツール