Extraction d'une chaine de caractère à partir d'une Regex
Bonjour,
J'ai formulé l'expression régulière suivante :
[0-9]{4}-(0[0-9]|1[0-2])-([0-2][0-9]|3[0-1]) (([0-1][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]), elle correspond à une date sous format "yyyy-mm-dd hh:mm:ss:msms"
Avec un grep j'affiche toute la ligne qui contient l'occurrence. Mais mon but est de n'afficher que la date et non pas toute la ligne.
J'ai pensé à contourner le problème de cette façon:
Code:
1 2
| regex="[0-9]{4}-(0[0-9]|1[0-2])-([0-2][0-9]|3[0-1]) (([0-1][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9])"
grep -E $regex mon_fichier|sed -r "s/$regex/%$regex%/g|cut -d "%" -f1 |
Mais cela ne fonctionne pas car le sed remplace la regex avec l'expression et non pas la valeur trouvée.
Merci pour votre aide