1

プロジェクトのさまざまなサイトからさまざまな.swfファイルを抽出したいと思います。サイトが異なれば、ソースメソッドも異なるため、正規表現では使用src=できません。data=

ファイル名をと一致させることはできますが、httpで始まる/[\w-]+.swf/gフルパス()を一致させようとすると、パスの前の別のhttp(コードの最初のhttp)と一致します。http(.*?).swfまた、私は使用できないsrc=などdata=、リンクのみである必要があります。

基本的に、逆方向に検索したときに最初に見つかったhttpに一致を制限する方法はありますか?

誰かが見てみたいなら、ここにコードがあります:http: //pastebin.com/kT20UqqJ。そして、ここが正規表現をテストするのに適した場所です:http: //regex.larsolavtorvik.com/

4

2 に答える 2

1

次の方法を試してください。

var regex = /http:[\.\/\w-%]+\.swf/g

.それ以外の場合は任意の文字と一致し、/それは式の区切り文字であるため、エスケープする必要があります。

ここで実際の例を見ることができます。

于 2013-01-22T08:41:00.013 に答える
-1

URL でエンコードされた文字 (空白など) がある場合は%、URL にも含まれます。

この場合に機能する例を次に示します。/http:[\./\w%-]+\.swf/g

正規表現をテストできるツールは次のとおりです: http://regexpal.com/

そして、そのパフォーマンスを確認できる場所: http://regexter.com/

于 2013-01-22T08:45:43.277 に答える