[C#] problème avec les expressions régulières
mon besoin :
En entrée : un fichier, une expression régulière, le remplacement.
Je souhaite appliquer l'expression régulière au contenu entier du fichier.
1°/ solution, on lit le fichier ligne par ligne et on applique le remplacement :
Code:
1 2 3 4 5 6 7
|
Regex myRegex = new Regex("^([a-z]+)([0-9]+)\t([0-9])+$");
string line ;
while ((line = sr.ReadLine()) != null)
{
Console.Out.WriteLine(myRegex.Replace(line, "$1-------$2------$3"));
} |
2°/ solution. Lire le fichier entiérement et appliquer l'expression régulière.
Code:
1 2 3
|
string t = sr.ReadToEnd()
string result = myRegex.Replace( t, "$1-------$2------$3"); |
Cela ne marche pas !
Ne serait-il pas possible d'appliquer ce remplacement sans parcourir le fichier ligne par ligne.
Je me rappelles qu'en perl, on appliquait une regex à tout un flux en entréé.
ou même sur d'autres outils, c'est possible.
Merci de votre aide.