Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 23/01/2011, à 04:20

gaelb

EXpression régulière shell

Bonjour,

sur cette page: http://forum.ubuntu-fr.org/viewtopic.php?id=391409

une expression régulière est utilisée:

ext=${DLIST##*.}

je connais les regex pour les utiliser en php et celle-ci n'a pas le même format.
Pourriez-vous me donner plus d'infos et/ou des liens?

merci à vous

Hors ligne

#2 Le 23/01/2011, à 04:27

ehmicky

Re : EXpression régulière shell

Salut,
Cette expression renvoie tout ce qui suit le dernier point de $DLIST (à moins qu'elle n'ait pas de point, auquel cas $DLIST est renvoyé entier). Plus d'infos.


Stego++, bibliothèque libre de stéganographie (avec cryptographie), à venir !
Besoin de votre aide :
Stats sur les compilateurs C++ les plus utilisés
Comment utiliser les archetypes C++ ?

Hors ligne

#3 Le 23/01/2011, à 04:32

chopinhauer

Re : EXpression régulière shell

La chaîne '*.' n'est pas une expression régulière, mais un glob. L'expression ${var##pattern} par contre est un développement de paramètres.

Les deux sont décrites dans la section "Développements" de la page de manuel de bash, notamment aux sous-sections Remplacement des paramètres et Motifs génériques.


Pensez à donner un bon titre à vos sujets : cela permettra d'aider d'autres utilisateurs dans votre même situation. Ce n'est pas qu'en donnant des solutions qu'on aide, mais aussi en posant des bonnes questions et… facilement trouvables.

Hors ligne

#4 Le 23/01/2011, à 05:14

gaelb

Re : EXpression régulière shell

ok, mais je ne vois pas comment l'expression *. correspond à extraire ce qui se trouve derrière le dernier point, le pattern est-il ce qui ne doit pas être retourné?

merci pour vos réponses.

Hors ligne

#5 Le 23/01/2011, à 12:53

chopinhauer

Re : EXpression régulière shell

L'opération efface la plus longue occurrence du motif *. au début du mot. Ainsi la partie effacée ira du début du mot à la dernière occurrence du caractère point. (L'équivalent regexp serait '.*\.')


Pensez à donner un bon titre à vos sujets : cela permettra d'aider d'autres utilisateurs dans votre même situation. Ce n'est pas qu'en donnant des solutions qu'on aide, mais aussi en posant des bonnes questions et… facilement trouvables.

Hors ligne