Fonction recherche

[Résolu]
Signaler
Messages postés
38
Date d'inscription
dimanche 29 janvier 2006
Statut
Membre
Dernière intervention
17 août 2008
-
Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
-
Bonjour,

Voilà j'essaye de mettre une fonction recherche dans mon éditeur de texte, malheureusement quand j'entre le mot àn rechercher il trouve la premerière occurence et je ne sais pas comment passer à la suivant.
Je programme en C# 2

Si quelqu'un pourrait m'aider se serait vraimment bien sympathique de sa part,

D'avance merci

10 réponses

Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
57
Hum, étant donné que la prochaine question sera de donner un morceau de code, j'anticipe un p'tit peu. Ca donnerait donc qqch dans ce genre là (vite fait) :

bool end =
false;

int curIndex = 0;

while (
true)
{
   curIndex =
this.richTextBox.Find(
"myString", curIndex + 1,
RichTextBoxFinds.None);
  
if (curIndex == -1)
break;
}

<hr>
[Pub] http://www.csharpfr.com/auteurdetail.aspx?ID=13319 [\Pub]
C# forever /infomsg/auteurdetail.aspx?ID=13319/infomsg/auteurdetail.aspx?ID=13319/infomsg/auteurdetail.aspx?ID=13319/infomsg/auteurdetail.aspx?ID=13319/auteurdetail.aspx?ID=13319/auteurdetail.aspx?ID=13319/auteurdetail.aspx?ID=13319/auteurdetail.aspx?ID=13319/auteurdetail.aspx?ID=13319/auteurdetail.aspx?ID=13319/auteurdetail.aspx?ID=13319/auteurdetail.aspx?ID=13319/auteurdetail.aspx?ID=13319/auteurdetail.aspx?ID=13319

/auteurdetail.aspx?ID=13319
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
97
Salut,

La doc parle d'une surcharge de la méthode String.IndexOf qui devrait t'aider...
String.IndexOf (String, Int32)

/*
coq
MVP Visual C#
*/
Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
57
Hello,

On complément de la réponse de coq, j'ajouterais que ça pourrait être utilile de faire la recherche avec des expressions régulières. C'est plus rapide que la méthode IndexOf() de la classe string (si je ne me trompe pas)...

<hr>
[Pub] http://www.csharpfr.com/auteurdetail.aspx?ID=13319 [\Pub]
C# forever /infomsg/auteurdetail.aspx?ID=13319/infomsg/auteurdetail.aspx?ID=13319/infomsg/auteurdetail.aspx?ID=13319/infomsg/auteurdetail.aspx?ID=13319/auteurdetail.aspx?ID=13319/auteurdetail.aspx?ID=13319/auteurdetail.aspx?ID=13319/auteurdetail.aspx?ID=13319/auteurdetail.aspx?ID=13319/auteurdetail.aspx?ID=13319/auteurdetail.aspx?ID=13319
Messages postés
38
Date d'inscription
dimanche 29 janvier 2006
Statut
Membre
Dernière intervention
17 août 2008

Merci, je regarde de se pas à vos information merci, je vous tiens au courrant
Messages postés
38
Date d'inscription
dimanche 29 janvier 2006
Statut
Membre
Dernière intervention
17 août 2008

J'ai essayé mais sa fonctionne pas j'ai utilisé richtextbox.find() la il trouve la première occurence et c'est tout j'arrive à "scanner" tout le texte. (je suis un boulet)
Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
57
Mais étant donné que c'est une RichTextBox ton Control, tu peux utiliser la méthode Find comme tu le disais. Voici une idée pour trouvée toute les occurances :

// premier pas
int index =
this.richTextBox.Find(
"myString", 0,
RichTextBoxFinds.None);

// pas suivante
int index2 =
this.richTextBox.Find(
"myString", index,
RichTextBoxFinds.None);

// etc (suffit de mettre tout ça dans une boucle !

<hr>
[Pub] http://www.csharpfr.com/auteurdetail.aspx?ID=13319 [\Pub]
C# forever /infomsg/auteurdetail.aspx?ID=13319/infomsg/auteurdetail.aspx?ID=13319/infomsg/auteurdetail.aspx?ID=13319/infomsg/auteurdetail.aspx?ID=13319/auteurdetail.aspx?ID=13319/auteurdetail.aspx?ID=13319/auteurdetail.aspx?ID=13319/auteurdetail.aspx?ID=13319/auteurdetail.aspx?ID=13319/auteurdetail.aspx?ID=13319/auteurdetail.aspx?ID=13319/auteurdetail.aspx?ID=13319/auteurdetail.aspx?ID=13319
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
97
Me semblait bien aussi qu'il y avait le même type d'option.
La page magique : Classe RichTextBox

/*
coq
MVP Visual C#
*/
Messages postés
38
Date d'inscription
dimanche 29 janvier 2006
Statut
Membre
Dernière intervention
17 août 2008

Merci à tous je pense que ca devrais aller maintenant