[Visual C# 2010] Regex pour recuperer une balise
Bonjour,
J'ai un fichier txt qui contient quelque chose comme ca :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
|
/begin MEASUREMENT ACM_2st_bypass_dmnd "Duty cycle of the bypass actuator"
UBYTE CM_1 /* FT_enumeration1:((1=TRUE) (0=FALSE) ) */ 1 0 0 1
ECU_ADDRESS 0xFFF90EB2
/begin IF_DATA DIM
0xFFF90EB2 INTERN BYTE
/end IF_DATA
/begin IF_DATA VISU
ADR_COM 0xFFF90EB2 ADR_ABS 0xFFF90EB2
/end IF_DATA
/begin FUNCTION_LIST
ACM
/end FUNCTION_LIST
/end MEASUREMENT
/begin MEASUREMENT ACM_2st_two_stage_turbo "Flag indicating whether 2 step turbocharge is used"
UBYTE CM_1 /* FT_enumeration1:((1=TRUE) (0=FALSE) ) */ 1 0 0 1
ECU_ADDRESS 0xFFF90E8C
/begin IF_DATA DIM
0xFFF90E8C INTERN BYTE
/end IF_DATA
/begin IF_DATA VISU
ADR_COM 0xFFF90E8C ADR_ABS 0xFFF90E8C
/end IF_DATA
/begin FUNCTION_LIST
ACM
/end FUNCTION_LIST
/end MEASUREMENT |
Je desire recuperer seulement une des deux balises MESUREMENT (toute entiere). J'ai donc teste cette Regex :
Code:
1 2 3
|
@"/begin(\s+)MEASUREMENT(\s+)(\S+)[\S\s]+/end(\s+)MEASUREMENT" |
Le probleme, c'est que cela me donne le texte depuis le premier "/begin MEASUREMENT" jusqu'au dernier "/end MEASUREMENT" alors que moi je veux seulement avoir un collection de chaque MEASUREMENT
J'utilise :
Code:
1 2 3
|
MatchCollection matVariable = Regex.Matches(fichier, @"/begin(\s+)MEASUREMENT(\s+)(\S+)[\S\s]+/end(\s+)MEASUREMENT"); |
Je ne sais pas si j'ai ete assez clair ... Je suis la pour toute question
Merci d'avance,
Mathieu