0

単語が見つかった場合に一致する正規表現を作成したいと考えています。単語が見つからない場合は、2 番目の単語との一致を試みます。3 番目と 4 番目の単語について、このプロセスを繰り返したいと思います。

「else」命令が必要です。http://www.regular-expressions.info/conditional.html(?(?=regex)then|else)で見つけたものを試しましたが、失敗しました。と書いたのですが、有効な表現として認識すらされていません。(?(?=1080)1080|720)

注: Web サイトからビデオをダウンロードしていますが、利用可能な最高品質のビデオをダウンロードしたいと考えています。ユーザーが正規表現を使用してカスタム フィルターを作成できるようにする Firefox アドオン DownThemAll を使用しています。具体的には、単語1080に一致する式が必要です。見つからない720場合は一致を試み、見つからない場合は一致を試み、見つからない場合は一致540を試み480p/downloadます。

4

2 に答える 2

2

必要なのは交代だけです:

1080|720|540|480p/download

エンジンは一番左のパターンに一致させようとします。

于 2012-11-18T23:34:51.847 に答える
0

DownThemAll (おそらく JavaScript) で使用される正規表現エンジンは、この機能をサポートしていないと思います (リンクした記事でわかるように、Perl、PCRE、および .NET のみがサポートしています)。

ただし、ほとんどのエンジンでは、代替手段は左から右に試行する必要があります。したがって、これは次のようにする必要があります。

(1080|720|540|480)p/download
于 2012-11-18T23:35:27.573 に答える