Bonsoir,

J'ai la troisième colonne de mon fichier qui doit être du type décimal, genre number(2,1). Je souhaite vérifier que les données de cette colonne sont conformes au format attendu. Voici mon code en awk :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
if ($3 !~ /^[[:digit:]][.][[:digit:]]*$) print "Erreur|"$3
Le souci est que cette colonne peut avoir les valeurs suivantes :
Le code ci-dessous me retourne ceci
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
Erreur|1
2.1
1.4
Erreur|2
Certes le premier chiffre et le dernier ne contiennent pas de virgule mais il n'empêche qu'ils sont correctes puisqu'ils peuvent s'écrire "1.0" et "2.0". Comment dire à mon programme qu'il faut les prendre ?