Expression reguliere

Signaler
Messages postés
10
Date d'inscription
mercredi 17 mars 2010
Statut
Membre
Dernière intervention
29 juillet 2010
-
Messages postés
10
Date d'inscription
mercredi 17 mars 2010
Statut
Membre
Dernière intervention
29 juillet 2010
-
bonjour,

voici mon probleme, je cherche a detecter le caractere # avec une expression reguliere, mais celle ci l'ignore et reagie comme si j'avais mis un espace a la place du diese, meme probleme avec les caracteres : et .

if (Regex.Matches(line, "#", RegexOptions.IgnoreCase).Count > 0)
{
....

}

quel est l'astuce?

merci

5 réponses

Messages postés
10
Date d'inscription
mercredi 17 mars 2010
Statut
Membre
Dernière intervention
29 juillet 2010

ca , ca ne marche pas non plus

if (Regex.Matches(line, Regex.Escape("#"), RegexOptions.IgnoreCase).Count > 0)
Messages postés
233
Date d'inscription
vendredi 21 mars 2003
Statut
Membre
Dernière intervention
25 octobre 2010

essaye ca:

if (Regex.Matches(line, "\\#", RegexOptions.IgnoreCase).Count > 0)
{
....

}


Pas sur que ça marche, mais c'est probable que ça marche...

Nul ne devient grand par la guerre...
Messages postés
441
Date d'inscription
mardi 2 décembre 2003
Statut
Membre
Dernière intervention
22 mai 2012
7
Mais pourquoi passer par les Expressions régulières pour ça ?
C'est tout de même lourd...

if (line.Split('#').Length > 1)
{
...
}

ou bien

if( line.IndexOf( '#' ) != -1 )
{
...
}
Messages postés
441
Date d'inscription
mardi 2 décembre 2003
Statut
Membre
Dernière intervention
22 mai 2012
7
Autrement pour faire ce que tu souhaites, c'est ton pattern qui est erroné :

if (Regex.Matches(line, "[#]", RegexOptions.IgnoreCase).Count > 0)
{
...
}
Messages postés
10
Date d'inscription
mercredi 17 mars 2010
Statut
Membre
Dernière intervention
29 juillet 2010

merci les gars ca marche!!