0

JS / CSSファイルの特定のURLが「?v=xyz」などで終わる場合があるとします。

PCREで両方のケースをキャプチャするにはどうすればよいですか?

"/my/path/lib.js"

以下

"\.[js|css]$"

正常に動作します。そして、私は次のようなケースを含めたいと思います:

"/my/path/lib.js?v=1.4"

"/my/path/style.css?v=3"

Lua-5.1PCRElibを使用しています

> rex_pcre = require "rex_pcre"
> return rex_pcre.find("/my/path/jquery.css", "\.(?:js|css)(?:$|\?)")
stdin:1: nothing to repeat (pattern offset: 17)
stack traceback:
        [C]: in function 'find'
        stdin:1: in main chunk
        [C]: ?
4

1 に答える 1

1

あなたが使用することができます:

\.(?:js|css)(?:$|\?)

[js|css]それはあなたが思っていることではないことに注意してください。これは文字クラスであり、の文字の1つと一致しcjs|ます。グループが必要です:(?:js|css)

于 2013-03-14T08:26:27.113 に答える