2012-01-30 2 views
1

J'essaie d'utiliser la méthode Regex.Match pour trouver des caractères correspondants dans un fichier. À l'heure actuelle, la méthode de correspondance regex utilise la ligne du fichier en mémoire (strLine) et la vérifie par rapport au paramètre spécifié (m_strRegEx) et à toutes les options applicables. Bien que comment puis-je sortir de cela juste les caractères de mathching?Regex Match - sortie des caractères correspondants dans un fichier

Match mtch; 
if (m_bIgnoreCase == true) 
    mtch = Regex.Match(strLine, m_strRegEx, RegexOptions.IgnoreCase); 
else 
    mtch = Regex.Match(strLine, m_strRegEx); 

Répondre

1

Je suppose que vous avez besoin:

Match mtch = Regex.Match(strLine, m_strRegEx, m_bIgnoreCase ? RegexOptions.IgnoreCase : RegexOptions.None); 
if (mtch.Success) 
{ 
    Console.WriteLine(mtch.Value); 
} 

ou vous pouvez rechercher strLine toutes les occurrences d'un seul coup:

MatchCollection matches = Regex.Matches(strLine, m_strRegEx, m_bIgnoreCase ? RegexOptions.IgnoreCase : RegexOptions.None); 
foreach (var match in matches) 
{ 
    Console.WriteLine(match.ToString()); 
}