Expression régulière et ET
gunbol
Messages postés
52
Statut
Membre
-
Mikey_UFC Messages postés 315 Statut Membre -
Mikey_UFC Messages postés 315 Statut Membre -
Bonjour,
Je suis à la recherche d'une réponse à une question bête:
Dans une ligne du genre "toto blablabla titi", je recherche une expression régulière qui permet de rechercher deux patterns: toto ET titi. Il faut que le résultat soit positif uniquement si les deux patterns ont été trouvés. Je n'ai pas la possibilité d'imbriquer deux expressions: il faut que ce soit dans une seule et unique expression régulière.
Le caractère & ne marche pas, alors que le | marche bien pour le OU.
"toto blablabla titi blbla" => OK
"titi blablablabl toto" => OK
"toto blabla" => KO
"blabla titi" => KO
"tititototiti" => OK
Il me faudrait un pattern du genre "(toto)LE_SIGNE_ET(titi)"
Je vais devenir fou (et j'ai déjà fait devenir fou mes collègues).
Merci d'avance pour votre aide !
Gunther
Je suis à la recherche d'une réponse à une question bête:
Dans une ligne du genre "toto blablabla titi", je recherche une expression régulière qui permet de rechercher deux patterns: toto ET titi. Il faut que le résultat soit positif uniquement si les deux patterns ont été trouvés. Je n'ai pas la possibilité d'imbriquer deux expressions: il faut que ce soit dans une seule et unique expression régulière.
Le caractère & ne marche pas, alors que le | marche bien pour le OU.
"toto blablabla titi blbla" => OK
"titi blablablabl toto" => OK
"toto blabla" => KO
"blabla titi" => KO
"tititototiti" => OK
Il me faudrait un pattern du genre "(toto)LE_SIGNE_ET(titi)"
Je vais devenir fou (et j'ai déjà fait devenir fou mes collègues).
Merci d'avance pour votre aide !
Gunther
A voir également:
- Expression régulière et ET
- Expression écrite cm1 cm2 télécharger gratuit - Télécharger - Éducatifs
- Microsoft expression encoder - Télécharger - Divers Utilitaires
- Expression de recherche - Guide
- Avoir du ping expression ✓ - Forum jeux en ligne
- T'as du ping expression - Forum Réseau
9 réponses
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 )
}
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
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
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.
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
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 ......
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