相信經常與影片處理打交道的小夥伴對字幕檔一定不陌生。字幕檔一般來說會包含字幕序號、播放時間軸與具體的字幕內容,經常用於在影片播放的時候在對應的時間顯示相應的字幕內容。字幕檔通常會有多種類型,srt 後綴的字幕檔是比較常見的一種類型。有時候我們需要將字幕檔的內容進行提取,比如去除字幕序號、播放時間軸等資訊,只保留具體的字幕內容,那我們應該怎麼做呢?今天就一起來看看如何批次提取 srt 字幕檔中的文字。
在介紹如何批量提取 srt 字幕檔案中的文字之前,我們先看一下字幕檔案的格式是什麼樣的。

從上圖我們就能看出來,每組字幕檔案都至少四行
1、字幕編號,是自增的數字。
2、播放時間軸,格式為【播放開始時間 --> 播放結束時間】。
3、一行或者多行字幕內容。
4、一個空行。
今天要介紹如何批量提取 srt 字幕檔案中的文字,也就是要去除字幕檔案中的序號、時間軸以及空行的內容,那應該怎麼做呢?其實目前我們並沒有特別好的方式去提取 srt 字幕檔案中的文字內容,找了一圈也沒有比較合適的軟體。目前找到的一種比較好的方式就是透過正則表達式的方式進行處理。但是對於不太熟悉正則的小夥伴來說,門檻還是比較高的。並且透過正則去處理達不到批量處理的效果,只能一次處理一個檔案,並且還容易出錯。假如現在有大批量的 srt 檔案都需要提取字幕檔案的內容,那最高效的方式是什麼呢?
我們開啟「我的ABC軟體工具箱」,按下圖所示,左側選擇「檔案內容」,右側選擇「按規則尋找並取代檔案內容」的功能。

進入功能後,我們第一步就是需要選擇提取檔案內容的字幕檔案,也就是我們前面說的 srt 檔案,由於是批量操作,所以我們一次性可以選擇非常多的 srt 字幕檔案。

這裡也可以直接將 srt 檔案拖進來。選擇好後我們就可以點選下一步進入選項設定的介面。

設定介面按照上圖的進行設定就可以了,注意每一項都需要按照上圖的進行選擇喲!公式(正則表達式)的輸入框中輸入的內容為:((\r\n)|(\r)|(\n))?\d+((\r\n)|(\r)|(\n))\d{2}:\d{2}:\d{2},\d{3} --> \d{2}:\d{2}:\d{2},\d{3}((\r\n)|(\r)|(\n))。
設定及輸入完成之後我們繼續點選下一步進行輸出目錄的選擇,選擇好之後繼續點選下一步,軟體就開始進行批量提取 srt 字幕檔案中的文字的處理了,一會兒我們就能得到已經刪除字幕編號、字幕時間軸等資訊的檔案了。