youtube-dl 引数の正規表現

youtube-dl 引数の正規表現

youtube-dl引数から出力テンプレートとffmpegの場所の2つのパスを抽出したい

-o (.*%\(ext\)s).* --ffmpeg-location (.*)

上記の正規表現を使用すると、以下の式から出力テンプレートとffmpegの場所の両方を取得できます。

-o D:/Deskttop/test//%(title)s.%(ext)s -i -f (best)[height=1080]/best --recode-video mp4 https://www.youtube.com/watch?v=MMuUFjxLQJU --no-playlist --encoding utf-8 --ffmpeg-location D:/Deskttop/test/

問題は、次のように ffmpeg の場所が提供されないことがあることです。

-o D:/Deskttop/test//%(title)s.%(ext)s -i -f (best)[height=1080]/best --recode-video mp4 https://www.youtube.com/watch?v=MMuUFjxLQJU --no-playlist --encoding utf-8

1 つの正規表現のみを使用して、ffmpeg の場所が式に存在しない場合でも、出力テンプレートをキャプチャできるようにしたいと考えています。

私はこれをテストしていますここ

答え1

私のコメントは回答になります。

この正規表現を使用すると、どちらの場合にも機能します。

-o (.*%\(ext\)s).+?(?:--ffmpeg-location (.+?))?$

デモと説明

関連情報