Aide regular expression

Résolu
serjjj -  
 Utilisateur anonyme -
Bonjour,

dans cette exemple:


http://com.exemple/123/
http://exemple.com/123/
http://www.exemple.com/123/
http://exemple.com.fr/123/
http://exemple.info/exemple.com/666/
http://exemple.com/123
http://exemple.com/123.html
http://exemple.com/123/456/
http://exemple.com/1/2/3/
http://exemple.com/789/
http://exemple.com/123/a
http://exemple.com/123/12
http://exemple.com/1234/
http://exemple.net/123/
http://exemple.net/456/
http://exemple.org/123/
http://exemple.org/
http://exemple.org/1/
http://exemple.org/abc/
http://exemple.org/12a/
http://exemple.org/456/

via regular expression, comment ne sélectionner que les urls avec nom de domaine .com ou .org suivi par trois nombres et fini par une slash /
  • (com|org)
  • d{3}
  • /$

urls valide :

http://exemple.com/123/
http://www.exemple.com/123/
http://exemple.com/789/
http://exemple.org/123/
http://exemple.org/456/

Merci.
A voir également:

2 réponses

Utilisateur anonyme
 
echo "$url" | grep -E 'http:\/\/(www\.)?exemple\.(com|org)\/[0-9]{3}'\/$
http://exemple.com/123/
http://www.exemple.com/123/
http://exemple.com/789/
http://exemple.org/123/
http://exemple.org/456/
0
serjjj
 
C'est parfait pour moi, merci :)

Si ce n'est pas trop demander, comment tester sur le site https://regex101.com/
0
Utilisateur anonyme
 
"Si ce n'est pas trop demander, comment tester sur le site https://regex101.com/


Il y a juste un petit soucis avec la fin de ligne apparemment, donc j'ai ajouté (\n|$) pour dire qu'on a soit une fin de ligne, soit un retour à la ligne :


0
Utilisateur anonyme
 
Salut,

tu peux remplacer [0-9] par \d
http:\/\/(www\.)?exemple\.(com|org)\/\d{3}\/\n|$


0
serjjj
 
@Rocailleux, @Whismeril, Je suis satisfait :) Encore merci, merci pour vos réponses.
0
smed_79 Messages postés 1291 Date d'inscription   Statut Contributeur Dernière intervention   844
 
> Il y a juste un petit soucis avec la fin de ligne apparemment

@Rocailleux Utiliser l'option (flag) multi line.

0
Utilisateur anonyme
 
Bonjour smed,
au départ je me suis fais la même réflection, mais....

Rocailleux n'a pas développé, sa première syntaxe acceptait http://exemple.com/123/a et http://exemple.com/123/12 donc pour s'en affranchir il a spécifié qu'ensuite il y a soit une fin de ligne soit la fin du texte.
Et du coup, pas besoin de l'option multi ligne.
0