Les Allergies
Alimentaires
Posez votre question Signaler

Joker chaine de caractères BASH [Résolu]

gardiendelanuit 998Messages postés 20 décembre 2007Date d'inscription 23 mai 2012Dernière intervention - Dernière réponse le 17 déc. 2011 à 18:21
Bonjour à tous,
Voilà malgré une longue recherche sur google, je n'est toujours pas trouvé comment comparer une chaine de caractère avec une partie...
Je m'explique:
Je voudrais comparer un lien entré par l'utilisateur de façon à savoir si la syntaxe du lien est correct (avec www.*.* ou [[[http://]]]*.* ...)
Seulement avec l'étoile (qui d'après ce que j'ai vu ne sert que pour les recherches de fichiers) ça ne marche pas.
Voilà ce que j'ai fais :
 while [ $link != "www.*.*" ] && [ $link != "[[[http://]]]*.*" ] && [ $link != "[[[https://]]]*.*" ]   
 do   
  echo "Votre lien n'est pas valide!"    
  read link   
 done

Merci d'avance pour vos réponses! :)
Lire la suite 

Joker chaine de caractères BASH »

2 réponses
Réponse
+1
moins plus
salut,

regarde bien le man bash, le paragraphe sur les Correspondances de Motifs (Pattern Matching), et celui sur les [[
while [[ $link == +(http?(s)://*|www.*) ]]
do   
  echo "Votre lien n'est pas valide!"    
  read link
done
ici les guillemets sont facultatifs, mais entre [ ils sont indispensables.
Ajouter un commentaire
Réponse
+0
moins plus
Merci beaucoup de ta réponse j'ai regardé pas mal de man mais je ne cherchais sûrement pas au bon endroit.
Merci!
Ajouter un commentaire
Ce document intitulé « Joker chaine de caractères BASH » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?