REGEXTEST

sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 - 23 août 2006 à 11:45
zakariabamou Messages postés 29 Date d'inscription mercredi 16 décembre 2009 Statut Membre Dernière intervention 24 août 2012 - 8 août 2012 à 02:02
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/39219-regextest

zakariabamou Messages postés 29 Date d'inscription mercredi 16 décembre 2009 Statut Membre Dernière intervention 24 août 2012
8 août 2012 à 02:02
bonjour a tout le monde, je cherche a développer un code en C# qui me permet d'utiliser les expressions régulières pour trouver des mots (par exemple ayant la forme PM-ASK-2134) dans un document Word, le code est facile pour des fichiers textes (.txt) mes pour un document Word c'est différent, SVP si qelqu'un a une idée je suis coinsé depuis 2 semaines. merci a l'avance.
voila mon code: (il permet de trouver la chaine "PM-ASK-2134" dans un document word mais je cherche a trouver toutes les ocurences de ce type en utilisant une expression régulière):

object missing = System.Reflection.Missing.Value;
object fileName = @textBox1.Text.ToString();
Microsoft.Office.Interop.Word.Application msWord = new Microsoft.Office.Interop.Word.Application();
msWord.Visible = false;
Microsoft.Office.Interop.Word.Document nvDoc;
nvDoc = msWord.Documents.Open(ref fileName, ref missing, ref missing,
ref missing, ref missing, ref missing,
ref missing, ref missing, ref missing,
ref missing, ref missing, ref missing,
ref missing, ref missing, ref missing,
ref missing);

nvDoc.Application.Selection.Find.ClearFormatting();
Regex Tag = new Regex(@"SC-([\w\-.]+)-([\S\-.]+)");
nvDoc.Application.Selection.Find.Text = "PM-ASK-2134";

while (nvDoc.Application.Selection.Find.Execute(
ref missing, ref missing, ref missing, ref missing, ref missing,
ref missing, ref missing, ref missing, ref missing, ref missing,
ref missing, ref missing, ref missing, ref missing, ref missing))
{
MessageBox.Show(nvDoc.Application.Selection.Find.Text);
}
// else MessageBox.Show("Text not found.");

// Fermer le document
nvDoc.Close(ref missing, ref missing, ref missing);

// Fermeture de word
msWord.Quit(ref missing, ref missing, ref missing);
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 38
23 août 2006 à 11:45
hum... pas testé... mais l'idée n'est pas nouvelle :D
http://www.csharpfr.com/codes/MAFTOOLS-TESTEUR-EXPRESSIONS-REGULIERES_36931.aspx