Recherche de Caractère dans une chaîne

DrChal Messages postés 28 Date d'inscription dimanche 22 décembre 2002 Statut Membre Dernière intervention 30 mars 2012 - 31 déc. 2002 à 09:13
cs_rabbiwan Messages postés 151 Date d'inscription mercredi 18 septembre 2002 Statut Membre Dernière intervention 22 février 2007 - 29 déc. 2004 à 11:06
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

pornik Messages postés 37 Date d'inscription mardi 11 décembre 2001 Statut Membre Dernière intervention 31 décembre 2002 2
31 déc. 2002 à 11:08
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).
2
cs_rabbiwan Messages postés 151 Date d'inscription mercredi 18 septembre 2002 Statut Membre Dernière intervention 22 février 2007
29 déc. 2004 à 11:06
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
0
Rejoignez-nous