Utilisation expressions régulières
Résolu
Je n'arrive pas à faire fonctionner ce code, quelque chose m’échappe ..... Si quelqu'un a une idée, ce serait formidable!
#!/bin/bash #15 octobre 2020 tel="033612345678" echo $tel if [[ "$tel" == 033* ]] then echo "téléphone Français" else echo "indicatif inconnu" fi if [[ "$tel" == 033[1-9][0-9]* ]] #if [[ "$tel" == ^033[1-9]{1}[0-9]{8}$ ]] then echo "tel valide" else echo "tel invalide" fi
A voir également:
- Utilisation expressions régulières
- Utilisation chromecast - Guide
- Télécharger gratuitement notice d'utilisation - Guide
- Manuel utilisation batigest connect pdf - Forum compta / gestion
- La ressource demandée est en cours d'utilisation ✓ - Forum Logiciels
- Family link temps d'utilisation ne fonctionne pas - Forum Contrôle parental
2 réponses
Bonjour,
Je suis d'accord avec les remarques de zipe31, essaye de faire attention à l'avenir.
Tu ne peux pas faire un test d'égalité entre une chaîne et une expression régulière, ce sont deux types différents, donc pas comparables. Il faut passer ton expression régulière à grep et regarder ce que retourne
Bonne chance
Je suis d'accord avec les remarques de zipe31, essaye de faire attention à l'avenir.
Tu ne peux pas faire un test d'égalité entre une chaîne et une expression régulière, ce sont deux types différents, donc pas comparables. Il faut passer ton expression régulière à grep et regarder ce que retourne
grep. Voir exemple.
if echo "033612345678" | grep -q "033[1-9][0-9]*"; then echo ":)" fi
Bonne chance
Bonjour¹ !
Petit rappel…
À afficher du code, autant le mettre en valeur entre balises adéquates (<code>…</code>) et tant qu'à faire expliquer un tant soit peu ce qu'on cherche à faire avec ce code, tout le monde n'est pas à même de décoder un script quel qu'il soit.
¹ Ce n'est pas en option !
Petit rappel…
À afficher du code, autant le mettre en valeur entre balises adéquates (<code>…</code>) et tant qu'à faire expliquer un tant soit peu ce qu'on cherche à faire avec ce code, tout le monde n'est pas à même de décoder un script quel qu'il soit.
¹ Ce n'est pas en option !
D'ailleurs l'emploi des doubles crochets pour un test est la bonne solution :
Une doc en anglais sur le sujet.