Perl n’est pas forcément mon language préféré mais pour faire du oneline il est plutôt génial.
Aujourd’hui un truc tout simple une fois de plus. Récupérer un pattern par une regex mais en récupérant toutes les occurances. Cela sous entend que l’on récupère également les patterns même si ils sont présents plusieurs fois par ligne.
Voici le fichier de départ :
└─ $ ▶ cat file.txt vert gris jaune bleu orange b rouge blanc beige
Je cherche à récupérer les mots commençant par un b soit le pattern\bb\w+
perl -ne 'while(/\bb\w+/g){print "$&\n";}' file.txt
Donc :
- -e : ligne de commande
- -n : évite de faire un while, permet de faire une boucle
- while : pour chaque pattern
- $& : récupère le pattern
- print : on affiche