Bonjour à tous,
Je cherche à parser une chaine avec une regexp :
La chaine est soit la première, soit la seconde :
Code : Sélectionner tout - Visualiser dans une fenêtre à part Regex reLastNumber = new Regex(@"CRYST1\s+([\.0-9]+)\s+([\.0-9]+)\s+([\.0-9]+)\s+([\.0-9]+)\s+([\.0-9]+)\s+([\.0-9]+)\s+C(\s+[\.0-9]+)+");
et je veux obtenir le dernier nombre (on peut voir que le nombre de nombre après le 'C' est variable).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 line = "CRYST1 60.009 61.046 62.671 90.00 201.60 80.00 C 1 2 1 4"; line = "CRYST1 60.135 61.902 60.865 90.00 102.41 90.00 C 2 4";
ma regexp matche bien la chaine mais si je veux obtenir le dernier nombre par :
çà plante car le dernier nombre est une chaine vide.
Code : Sélectionner tout - Visualiser dans une fenêtre à part numberTmp = double.Parse(reLastNumber.Match(line).Groups[reLastNumber.Match(line).Groups.Count].Value);
Auriez-vous une solution ?
Merci beaucoup par avance.
Laurent.
Partager