2010-06-11 6 views
1

Je dois être capable d'attraper quand l'URL contient une image de plusieurs types de fichiers ou suivre cette syntaxe.Expression régulière sur une URL

http://localhost:8080/fdlic-web/webpic/101

Voici ce que j'ai jusqu'à présent.

(.*)(jpg|gif|png|bmp|jpeg|webpic/(\d+))$ 
+0

votre regex est un peu bien, peut être fait que des améliorations mineures. Quelle est ta question? – unbeli

+0

ça marche? quelle est la question? – tanascius

+0

Quelle est la question? Est-ce que cette regex ne fonctionne pas pour vous? Précisez s'il vous plaît... – FrustratedWithFormsDesigner

Répondre

2

Bon à ce jour, utiliser un peu moins groupe et lancer le .*, vous ne avez pas besoin.

(?:webpic/\d+|gif|png|bmp|jpe?g)$ 

En fait, il est moins ambigu pour délimiter vos répertoires/types de fichiers pour éviter les correspondances partielles qui donnent des faux positifs:

(?:/(?:webpic/\d+)|\.(?:gif|png|bmp|jpe?g))$ 
    ^       ^
    | all path components here | 
     all file extensions here | 
Questions connexes