字幕作成時、案外困るのが文末表現である。
句読点をつける、!?を半角にする、そのあとに半角スペースを入れる…、など
私は主にテキストエディタで行っているが、
最近「正規表現」を覚えて作業効率がアップしたので紹介したい。
使用頻度の高いものから3つ
- 「!」「?」のあとに文が続く時、半角スペースを入れる
- 「!」「?」を半角→全角に
- 文末に「。」をつける
1.「!」「?」のあとに文が続く時、半角スペースを入れる
「!」「?」のあとに半角スペースを入れる。
※ただし、「!」「?」が文末にある場合、
後に続く文字が「!」「?」である場合、を除く。
whisper(音声認識)は適宜「?」をつけてくれるのだが、半角である。
一気に全角にしてしまってもいいのだが、
見た目的に、半角?+半角スペースの方が好きなので、この処理をする。
※ただし、「!」「?」が文末にある場合、
後に続く文字が「!」「?」である場合、を除く。
これさえなければ普通の置き換えで可能である。
実際これまでは一回全部置き換えで半角スペースをいれて、
そのあと文末の半角スペースを削除していた。(手動で)
だがこれではかなり手間がかかる。
例えば、こんな場合
あれ!?違う!合ってる?↲
このとき、半角スペースを入れて欲しいのは「二箇所」である。
あれ!?␣違う!␣合ってる?↲
(わかりやすいように「␣」にした)
「あれ」のあとの「!」、「合ってる」のあとの「?」のあとには
半角スペースを入れて欲しくない。
こんなワガママな私の希望を叶えてくれた正規表現は以下である。
ちなみに「¥」は和文フォントでの表示で、
欧文フォントでは「
\
」と表示されるため、適宜読み替えて欲しい。置換前
([!?])([^!?¥r¥n])
置換後
¥1 ¥2(¥1␣¥2)
素人目線の解説は以下。
置換前
- (グループ1)(グループ2)
- [ ] … 指定した文字のどれか
- [^] … 指定した文字を除くどれか
- ¥r、¥n … 改行を示す
置換後
- ¥1 … グループ1を示す
- ¥2 … グループ2を示す
ちなみに以前同じような内容で記事をあげた。
(記事にしたことを忘れていた)
こちら↑をより便利にしたのが今回紹介した正規表現である。
長くなったので、
- 「!」「?」を半角→全角に
- 文末に「。」をつける
は次回。
→参考サイト
投稿日:2023年3月2日
初出:2023年3月2日
0 件のコメント:
コメントを投稿