Suppression de caractères spécifiques d'une chaîne en php
Question
Comment puis-je vérifier une chaîne en php pour les caractères spécifiques tels que « # » ou « \ »?
Je ne veux pas vraiment utiliser le remplacer, il suffit de retourner vrai ou faux.
Merci
La solution
utilisez la fonction strstr http://us2.php.net/manual /en/function.strstr.php Renvoie une partie de chaîne de meule de foin à partir de la première occurrence de l'aiguille à la fin de la chaîne
Remarque: Si vous ne souhaitez que pour déterminer si une aiguille particulière se produit dans botte de foin, utilisez la fonction plus rapide et moins gourmandes en mémoire strpos () au lieu.
Autres conseils
Vous pouvez utiliser le strpos
fonction, si vous voulez seulement savoir si une chaîne contient un autre (le contenu de vos questions semble indiquer que, même si votre titre dit « supprimer ») .
Note:. Ne pas oublier d'utiliser l'opérateur !==
ou ===
, que la fonction peut retourner 0 ou faux, et ceux qui ont un sens différent
Si vous voulez "supprimer" caractères, str_replace
ou strtr
pourrait faire l'affaire.
Vous pouvez faire quelque chose comme ceci:
if (strpos($string, '#') !== false || strpos($string, '\') !== false) {
// One of those two characters is in the string.
}
Notez en particulier la syntaxe !==
qui différencie entre false
(ce qui signifie le caractère ne se trouve pas) et 0
(ce qui signifie qu'il a été trouvé à 0
position).
Essayez des expressions régulières.
preg_match('/[#\\\\]/', $String);
Remarque: Vous devez échapper trois fois antislashs de \ '
.Si vous voulez vraiment les au format booléen, vous pouvez utiliser un en tant que tel
preg_match('/[#\\\\]/', $String) ? true : false;
Ou simplement convertir en booléen
(bool)preg_match('/[#\\\\]/', $String);