J'entrepose ici mes découvertes linux, bash, python et java que je souhaite partager et mettre de côté...
Affichage des articles dont le libellé est regex. Afficher tous les articles
Affichage des articles dont le libellé est regex. Afficher tous les articles
jeudi 4 mars 2021
grep, extraire des données
Il est possible d'utiliser grep pour extraire des données. Dans l'exemple qui suit, on récupère le nom des compagnies dans un fichier json.
L'option -P active la compatibilité aux regexp PERL, le -o la récupération du terme matché et enfin le \K la suppression de la partie gauche dans le terme matché.
C'est plus simple que sed ou awk mais apparemment, le -P ne serait pas supporté sur toutes les distributions.
mercredi 7 octobre 2020
vendredi 9 septembre 2016
sed, évaluer une commande bash lors du remplacement
Je souhaitai décoder des valeurs encodées en base64 via sed.
Le paramètre final "/e" de sed permet d'évaluer l'expression remplacée.
Ici c'est la commande bash qui affiche l'attribut suivi d'un ':' et de la valeur décodée.
Comme vous le constatez, l'utilisation des valeurs capturées est possible.
Le code a été difficile à trouver, c'est pourquoi je le partage :)
Le paramètre final "/e" de sed permet d'évaluer l'expression remplacée.
Ici c'est la commande bash qui affiche l'attribut suivi d'un ':' et de la valeur décodée.
Comme vous le constatez, l'utilisation des valeurs capturées est possible.
Le code a été difficile à trouver, c'est pourquoi je le partage :)
mercredi 20 janvier 2016
sed, garder ou retirer des lignes matchant un pattern spécifié
Il est possible d'utiliser sed pour filter des lignes et garder/ne pas garder celles qui matchent un pattern spécifié
Dans l'exemple suivant, on garde ou ne garde pas les lignes contenant le terme ou
Il est tout à fait possible d'utiliser l'option in-place de sed pour travailler sur le fichier lui même.
Dans l'exemple suivant, on garde ou ne garde pas les lignes contenant le terme ou
Il est tout à fait possible d'utiliser l'option in-place de sed pour travailler sur le fichier lui même.
sed, delete
vendredi 3 mai 2013
jeudi 22 novembre 2012
mysql, regexp
Pour comptabiliser avec une regexp les numéros appelant valides (non masqués)
select count distinct REGEXP
vendredi 9 novembre 2012
awk, utiliser les intervalles {x,y}
Pour utiliser les intervalles avec awk, il suffit de rajouter l'option --re-interval
awk re regex intervalle { }
mercredi 7 novembre 2012
Vi, rechercher une regexp
Par exemple pour rechercher les occurences say ou play lorsque l'on édite un fchier :
mercredi 10 octobre 2012
bash, vérifier si une variable matche une regexp
On peut facilement vérifier si une donnée contenue dans une variable est au bon format.
Dans l'exemple ci-dessous, on vérifie si le numéro de version fourni est correct.
Dans celui-ci si la valeur contient localhost ou itg
Attention, la regexp n'est pas entre quote ni double-quote.
Dans l'exemple ci-dessous, on vérifie si le numéro de version fourni est correct.
Dans celui-ci si la valeur contient localhost ou itg
Attention, la regexp n'est pas entre quote ni double-quote.
=~, regexp, re
mercredi 8 août 2012
Bash, pattern substitution
Le manuel bash présente les syntaxes suivantes (voir)
- ${parameter#word} et ${parameter##word} pour supprimer le plus court et le plus long préfix
- ${parameter%word} et ${parameter%%word} pour supprimer le plus court et le plus long suffixe
- ${parameter/pattern/string} pour substituer une chaîne à un pattern.
?(<PATTERN-LIST>) Matches zero or one occurrence of the given patterns
*(<PATTERN-LIST>) Matches zero or more occurrences of the given patterns
+(<PATTERN-LIST>) Matches one or more occurrences of the given patterns
@(<PATTERN-LIST>) Matches one of the given patterns
!(<PATTERN-LIST>) Matches anything except one of the given patterns
D'où des choses zarbies du genre : $ shopt -s extglob
$ v="LE temps PASSE vite"
$ echo ${v//+([[:upper:]])}
temps vite
$ echo ${v%%+([[:lower:]])}
LE temps PASSE
pattern
Inscription à :
Articles (Atom)