3

私はそれらの文字列を持っています:

"/page/test/myimg.jpg"
"/page/test/"
"/page2/test/"
"/page/test/other"

/page/test で終わる文字列を除いて、すべての文字列に true が必要です.jpg

それから私はしました: /^\/page\/test(.*)(?!jpg)$/. まあ、それは機能していません。:\

次のように返されます。

"/page/test/myimg.jpg" // false
"/page/test/" // true
"/page2/test/" // false
"/page/test/other" // true
4

2 に答える 2

3

最後に固定された否定的な後ろ向きを使用します。

/^\/page\/test(.*)(?<!\.jpg)$/

わかりやすくするために、この正規表現は * で終わらない入力と一致します.jpg

^.*(?<!\.jpg)$

編集 (JavaScript でも動作する必要があります)

JavaScript は後読みをサポートしていないため、この醜いオプションを使用する必要があります。これは、最後の 4 文字の少なくとも 1 つが 以外でなければならないことを示してい.jpgます。

^.*([^.]...|.[^j]..|..[^p].|...[^g])$
于 2013-08-23T16:30:52.793 に答える