Recherche de Caractère dans une chaîne

Signaler
Messages postés
28
Date d'inscription
dimanche 22 décembre 2002
Statut
Membre
Dernière intervention
30 mars 2012
-
Messages postés
151
Date d'inscription
mercredi 18 septembre 2002
Statut
Membre
Dernière intervention
22 février 2007
-
DrChal

Salut ,
Je cherche le moyen de rechercher un mot dans une chaîne de caractère.
En VB, on avait la fonction InStr, existe t-elle en C#?
Pouvez vous me l'expliquer?

Merci d'avance

DrChal

2 réponses

Messages postés
37
Date d'inscription
mardi 11 décembre 2001
Statut
Membre
Dernière intervention
31 décembre 2002
1
string s = "Bonjour toi comment ca va?";
string MotCherche = "toi";
Console.WriteLine(s.Substring(s.IndexOf(MotCherche), MotCherche.Length));

Utilise la fonction membre IndexOf de String (ou les regex si la recherche devient complexe).
Messages postés
151
Date d'inscription
mercredi 18 septembre 2002
Statut
Membre
Dernière intervention
22 février 2007

Salut
J'ai utilisé ton système pour le instr en c# le problème chez moi c'est qu'il d'indique l'erreur suivante : "StartIndex ne peut pas être inférieur à zéro.\r\nNom du paramètre : startIndex"
voila la fonction :
if (temp.Substring(phrase.IndexOf(temp), temp.Length)!="")
Et quand je lui dit de commencer a 1 au niveau du indexof ben il me dit que mon indexof n'existe pas. Je fais passer phrase en variable dans la fonction qui utilise la recherche.
voila le code complet
public string Apostrophe(string phrase)
{
string temp="'";
try
{
if (temp.Substring(phrase.IndexOf(temp), temp.Length)!="")
{
temp="""" + phrase + """";
return(temp);
}
else
{
temp="'" + phrase + "'";
return(temp);
}
}
catch(Exception ex)
{
if (ex.Message != "")
{
EcrireLog(ex.Message, "clsConnectionDB","");
}
return(phrase);
}
}
si vous avez une idée
merci