Comment vérifier une chaîne pour un caractère spécial?
Je ne peux utiliser une chaîne de caractères dans mon programme, si elle ne contient pas de caractères spéciaux sauf soulignent _
. Comment puis-je le vérifier?
J'ai essayé d'utiliser unicodedata de la bibliothèque. Mais les caractères spéciaux viens de recevoir remplacés par des caractères standard.
source d'informationauteur Chuvi
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser
string.punctuation
etany
fonction comme ceciAvec cette ligne
nous préparons une liste de caractères de ponctuation qui ne sont pas autorisés. Comme vous voulez
_
pour être admis, nous supprimons_
à partir de la liste et de préparer de nouvelles définir commeinvalidChars
. Parce que les recherches sont plus rapides dans les ensembles.any
fonction sera de retourTrue
si au moins l'un des personnages est eninvalidChars
.Edit: Comme demandé dans les commentaires, c'est l'expression régulière de la solution. Expression régulière prises de https://stackoverflow.com/a/336220/1903116
Vous aurez besoin de définir des "caractères spéciaux", mais il est probable que, pour une chaîne de caractères
s
vous dire:ce code vérifie si tous les caractères ascii valeur est de plus de 126 donc un caractère non valide