Expressions régulières dans C#
Bonjour à tous,
Je cherche à parser une chaine avec une regexp :
Code:
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]+)+");
La chaine est soit la première, soit la seconde :
Code:
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"; |
et je veux obtenir le dernier nombre (on peut voir que le nombre de nombre après le 'C' est variable).
ma regexp matche bien la chaine mais si je veux obtenir le dernier nombre par :
Code:
numberTmp = double.Parse(reLastNumber.Match(line).Groups[reLastNumber.Match(line).Groups.Count].Value);
çà plante car le dernier nombre est une chaine vide.
Auriez-vous une solution ?
Merci beaucoup par avance.
Laurent.