Je voudrais pouvoir mémoriser des parties d'une regex pour m'en resservir plus tard.
Exemple dans un fichier liste.txt j'ai :
abc 123
J'aimerais pouvoir mémoriser des sélections, avec les () si j'ai bien compris et écrire un truc du genre:
egrep '(\w{3}) (\d{3})' -f liste.txt
Donc une sélection pour abc l'autre pour 123
Puis par la suite envoyer ces 2 sélections dans un fichier, genre \1>nom.txt \2>numero.txt
Comment je fais ? Y'a une autre commande que grep qui le permettrais?
------------------------------
En résumé je veux pouvoir parcourir un fichier avec une regex (car les sélections sont compliqués) et en sortir des morceaux dans des fichiers séparés... D'ailleurs, en langage Shell ou powershell.
Je veux sélectionner de toutes petites parties dans des lignes biens spécifiques d'un fichier HTML pour renommer des fichiers ensuite grâce à cela.
Donc là vu que j'arrive pas à me servir des captures groupes des regex ou du BASH_REMATCH, j’essaye de découper le résultat total de ma commande grep des cut...
J'ai fini par trouver, donc je poste ici si quelqu'un tombe sur ce sujet un jour:
#! /bin/bash
rgx='maregex'
while read line; do
if
[[ $line =~ $rgx ]]; then
echo "${BASH_REMATCH[1]}" >> match1.txt
echo "${BASH_REMATCH[2]}" >> match2.txt
fi
done < monfichier
C'est assez long en temps de traitement mais au moins ça fonctionne. Merci.
- Edité par AD4 15 septembre 2018 à 17:07:17
mémorisation dans une regex
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Validez la réponse utile « Un problème clairement exposé est à moitié résolu. » Pas de MP technique
Validez la réponse utile « Un problème clairement exposé est à moitié résolu. » Pas de MP technique
Validez la réponse utile « Un problème clairement exposé est à moitié résolu. » Pas de MP technique
Validez la réponse utile « Un problème clairement exposé est à moitié résolu. » Pas de MP technique
Validez la réponse utile « Un problème clairement exposé est à moitié résolu. » Pas de MP technique