Expression régulière et ET
Fermé
gunbol
Messages postés
47
Date d'inscription
mercredi 19 septembre 2007
Statut
Membre
Dernière intervention
18 mars 2016
-
28 janv. 2009 à 09:53
Mikey_UFC Messages postés 312 Date d'inscription jeudi 8 mars 2007 Statut Membre Dernière intervention 2 août 2010 - 28 janv. 2009 à 14:53
Mikey_UFC Messages postés 312 Date d'inscription jeudi 8 mars 2007 Statut Membre Dernière intervention 2 août 2010 - 28 janv. 2009 à 14:53
A voir également:
- Expression régulière et ET
- Expression de recherche - Guide
- Expression encoder - Télécharger - Divers Utilitaires
- T'as du ping expression ✓ - Forum Réseau
- Modèle fiche expression de besoin excel - Forum Word
- Mettre en image expression ✓ - Forum Jeux vidéo
9 réponses
Mikey_UFC
Messages postés
312
Date d'inscription
jeudi 8 mars 2007
Statut
Membre
Dernière intervention
2 août 2010
1
28 janv. 2009 à 10:25
28 janv. 2009 à 10:25
A ma connaissance, il n'y a pas de ET dans les expressions régulières.
Tu es obligé de faire :
if (recherche("toto", $maChaine) && recherche("titi", $maChaine))
{
// contient toto et titi
}
else
{
// ne contient pas ( toto et titi )
}
Tu es obligé de faire :
if (recherche("toto", $maChaine) && recherche("titi", $maChaine))
{
// contient toto et titi
}
else
{
// ne contient pas ( toto et titi )
}
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 567
28 janv. 2009 à 10:36
28 janv. 2009 à 10:36
Re,
Tu es obligé de faire :
Pas forcément.
Par exemple
106485010510997108
Tu es obligé de faire :
Pas forcément.
Par exemple
titi.*toto|toto.*titi--
106485010510997108
Mikey_UFC
Messages postés
312
Date d'inscription
jeudi 8 mars 2007
Statut
Membre
Dernière intervention
2 août 2010
1
28 janv. 2009 à 10:50
28 janv. 2009 à 10:50
C'est pas faux. :p
gunbol
Messages postés
47
Date d'inscription
mercredi 19 septembre 2007
Statut
Membre
Dernière intervention
18 mars 2016
4
28 janv. 2009 à 11:02
28 janv. 2009 à 11:02
Hello,
Merci pour vos réponses.
J'avais pensé à la solution de Lami20J, mais dès qu'on a trois paramêtres voire plus, c'est la galère, car il faut coder toutes les combinaisons.
Pas aussi mortelles que ca les expressions régulières :o) !
@+
Gunther
Merci pour vos réponses.
J'avais pensé à la solution de Lami20J, mais dès qu'on a trois paramêtres voire plus, c'est la galère, car il faut coder toutes les combinaisons.
Pas aussi mortelles que ca les expressions régulières :o) !
@+
Gunther
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 567
28 janv. 2009 à 11:06
28 janv. 2009 à 11:06
Re,
Comment ça trois paramètres ou plus?
Que comprends tu par paramètre?
Comment ça trois paramètres ou plus?
Que comprends tu par paramètre?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 567
28 janv. 2009 à 11:09
28 janv. 2009 à 11:09
Re,
Par exemple en perl tu peux utiilser le quantificateur ? qui dit au moteur de regex de s'arrêter après la 1ère occurence trouvé
Php, Perl, sed, etc.
Par exemple en perl tu peux utiilser le quantificateur ? qui dit au moteur de regex de s'arrêter après la 1ère occurence trouvé
titi.*?toto|toto.*?titiTu n'as pas dit avec l'environnement pour tes regex.
Php, Perl, sed, etc.
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 567
28 janv. 2009 à 11:10
28 janv. 2009 à 11:10
Re,
Tu peux aussi utiliser les références arrière
Par exemple
106485010510997108
Tu peux aussi utiliser les références arrière
Par exemple
(titi).*?(toto)|\2.*?\1--
106485010510997108
gunbol
Messages postés
47
Date d'inscription
mercredi 19 septembre 2007
Statut
Membre
Dernière intervention
18 mars 2016
4
28 janv. 2009 à 11:11
28 janv. 2009 à 11:11
Par trois paramêtres, je veux dire que si je cherche:
toto titi tutu tata, il faut faire une expression régulière qui prenne en compte toutes les combinaisons:
titi.*toto.*tata.*tutu|toto.*titi.*tutu.*tata|titi.*tata.*toto.*tutu ......
toto titi tutu tata, il faut faire une expression régulière qui prenne en compte toutes les combinaisons:
titi.*toto.*tata.*tutu|toto.*titi.*tutu.*tata|titi.*tata.*toto.*tutu ......
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 567
28 janv. 2009 à 11:22
28 janv. 2009 à 11:22
Re,
Chaque regex c'est en fonction de texte source et de résultat voulu ;-)
Par exemple
106485010510997108
Chaque regex c'est en fonction de texte source et de résultat voulu ;-)
Par exemple
(titi).*(toto).*(tata).*(tutu)|\4.*\1.*\2.*\3|\3.*\4.*\1.*\2|\2.*\3.*\4.*\1--
106485010510997108
Mikey_UFC
Messages postés
312
Date d'inscription
jeudi 8 mars 2007
Statut
Membre
Dernière intervention
2 août 2010
1
28 janv. 2009 à 14:53
28 janv. 2009 à 14:53
Si le nombre de paramètre est variable, je pense qu'il vaut mieux faire une recherche par mot.
Chaque mot étant stocké dans un tableau.
Chaque mot étant stocké dans un tableau.
$trouve=true; foreach($tab as $mot) if !(recherche($mot, $chaine)) $trouve = false; if($trouve) echo "c bon"; else echo "c pas bon";