Regex : négation chaine
Résolu/Fermé
A voir également:
- Regex ne commence pas par
- Je commence la nuit et je termine le matin ✓ - Forum Loisirs / Divertissements
- Bonjour je cherche la réponse à la devinette svp ✓ - Forum Loisirs / Divertissements
- Musique qui commence doucement puis accélère - Forum Musique / Radio / Clip
- Excel si commence par ✓ - Forum Excel
- Si une cellule commence par cz alors... - Forum Bureautique
2 réponses
zipe31
Messages postés
36402
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
6 422
7 oct. 2013 à 12:22
7 oct. 2013 à 12:22
Salut,
A mon avis il faut que tu sépares en deux ton test. Un premier pour tester
A mon avis il faut que tu sépares en deux ton test. Un premier pour tester
[;>]et un second pour le pipe (
|). Puis si le pipe est intercepté, tu vérifies s'il est suivi ou non d'un
grep...
$ echo "blibli | grep blabla" | egrep -o '\| *grep'
| grep
$ echo "blibli |grep blabla" | egrep -o '\| *grep'
|grep
$ echo "blibli |sed blabla" | egrep -o '\| *grep'
$
dubcek
Messages postés
18784
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
24 avril 2025
5 630
8 oct. 2013 à 12:51
8 oct. 2013 à 12:51
hello
essayer avec grep, à vérifier
essayer avec grep, à vérifier
$ params='|grep'
$ [[ $(grep -P '[;>]|\|(?!grep)' <<<"$params") ]]&& echo stop ||echo ok
ok
$ params='|fgrep'
$ [[ $(grep -P '[;>]|\|(?!grep)' <<<"$params") ]] && echo stop || echo ok
stop
$ params='|'
$ [[ $(grep -P '[;>]|\|(?!grep)' <<<"$params") ]] && echo stop || echo ok
stop
$ params='a>'
$ [[ $(grep -P '[;>]|\|(?!grep)' <<<"$params") ]] && echo stop || echo ok
stop
$ params='|grap'
$ [[ $(grep -P '[;>]|\|(?!grep)' <<<"$params") ]] && echo stop || echo ok
stop
$
8 oct. 2013 à 00:26
Par contre, il faudra que je prenne en compte le fait qu'il peut y avoir plusieurs caractères | un suivit de grep et un autre avec autre chose.
Merci pour votre réponse