Comparaison de string ds instruction if (php)
Biohazard-34
-
Defouille Messages postés 404 Statut Membre -
Defouille Messages postés 404 Statut Membre -
Bonjour,
je souhaite faire tester si une chaine ($ch2) commence par ($chn1).
Je me demander s'il y avait moyen de faire de mm qu'une requete sql, styel : ...where <champ2>="<champ1>*"
Sachant que ce test doit dans trouver dans un if .
quelqu'un aurait-il une idée?
je souhaite faire tester si une chaine ($ch2) commence par ($chn1).
Je me demander s'il y avait moyen de faire de mm qu'une requete sql, styel : ...where <champ2>="<champ1>*"
Sachant que ce test doit dans trouver dans un if .
quelqu'un aurait-il une idée?
A voir également:
- Comparaison de string ds instruction if (php)
- Comparaison million milliard - Accueil - Technologies
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Ds clock - Télécharger - Bureautique
- Logiciel comparaison photo gratuit - Télécharger - Photo & Graphisme
6 réponses
Bonjour,
pour comparer tes chaines avec une expression régulière tu peux utiliser la fonction "preg_match", elle renvoit true si l'expression régulière passée en premier paramètre est trouvée dans la chaine passée en deuxième paramètre.
https://www.php.net/manual/fr/function.preg-match.php
pour tester si $ch2 commence par $ch1 essai le code suivant :
notes :
l'expression régulière doit être entre "/"
le début de ligne est symbolisé par "^"
la fin de ligne est symbolisé par "$"
En espérant que ça t'ai aidé :)
pour comparer tes chaines avec une expression régulière tu peux utiliser la fonction "preg_match", elle renvoit true si l'expression régulière passée en premier paramètre est trouvée dans la chaine passée en deuxième paramètre.
https://www.php.net/manual/fr/function.preg-match.php
pour tester si $ch2 commence par $ch1 essai le code suivant :
preg_match("/^$ch1.*$/", $ch2);
notes :
l'expression régulière doit être entre "/"
le début de ligne est symbolisé par "^"
la fin de ligne est symbolisé par "$"
En espérant que ça t'ai aidé :)
Oui tu peux l'utiliser pour verifier si $ch1 est comprit dans $ch2, mais la syntaxe est un peu différente :
notes :
. représente n'importe quel caractère
* signie le caractère précédent 0 ou autant de fois que l'on veut
donc .* signifie n'importe quelle suite de caractère
Voila :)
preg_match("/^.*$ch1.*$/", $ch2);
notes :
. représente n'importe quel caractère
* signie le caractère précédent 0 ou autant de fois que l'on veut
donc .* signifie n'importe quelle suite de caractère
Voila :)
Un exemple ou je test si le début de $sString1 contient $sString2
$sString1 = "ceciEstMaChaineDeTest";
$sString2 = "ceci";
if( substr($sString1, 0, strlen($sString2) ) == $sString2 ){
echo $sString1." commence par ".$sString2;
}else{
echo $sString1." NE commence PAS par ".$sString2;
}
EnJoY !
$sString1 = "ceciEstMaChaineDeTest";
$sString2 = "ceci";
if( substr($sString1, 0, strlen($sString2) ) == $sString2 ){
echo $sString1." commence par ".$sString2;
}else{
echo $sString1." NE commence PAS par ".$sString2;
}
EnJoY !
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
$ch1="ceciestmaphrase";
$ch2="ma";
en bref est-ce que l'on peut utiliser la fonction de telle manière ?
preg_match("/*.$ch1.*$/", $ch2);
merci encore de ta réponse ça m'a bien débloqué :))