以下の 3 つの場合に共通の正規表現を作成しようとしています。
- Supernatural_S07E23_720p_HDTV_X264-DIMENSION.mkv
- the.listener.313.480p.hdtv.x264-2hd.mkv
- どうやってあなたのお母さんに会いましたか.s02e07.hdtv.x264-xor.avi
これで、私の通常の強制は元の文字列からシリーズ名を削除する必要があります。つまり、上記の文字列の出力は次のようになります。
- S07E23_720p_HDTV_X264-DIMENSION.mkv
- 313.480p.hdtv.x264-2hd.mkv
- s02e07.hdtv.x264-xor.avi
基本的なケースとしてsupernatural string
、以下の正規表現を書きましたが、正常に機能しましたが、シリーズ名が複数の単語を取得するとすぐに失敗します。
$string =~ s/^(.*?)[\.\_\- ]//i; #delimiter can be (. - _ )
したがって、私が考えていた上記のケースをどのように進めるかはわかり\w+{1,6}
ませんが、必要なこともできませんでした。
PS: 正規表現が何をしているかの説明をいただければ幸いです。