Quelle est la meilleure façon de vérifier si une chaîne de caractères ne contient que des espaces ?
La chaîne peut contenir des caractères combiné avec des espaces, mais pas juste les espaces blancs.
Quelle est la meilleure façon de vérifier si une chaîne de caractères ne contient que des espaces ?
La chaîne peut contenir des caractères combiné avec des espaces, mais pas juste les espaces blancs.
Faites juste attention à ce que myString soit une valeur nulle. Il retournera vrai : / \S /.test(null) == true
Beaucoup de ces réponses contiennent des regex ! Est-ce que cela signifie qu'il n'y a pas de moyen natif de détecter des choses en js ? Il n'y a pas de string.IsWhitespace ou autre ? Il n'y a pas non plus de trim natif ?
Cela fonctionne également pour les nouvelles lignes et les tabulations, alors que les exemples de regex ci-dessus ne le font pas, car ils ne recherchent que l'absence d'espace blanc. Cependant, je suis sûr que quelqu'un ayant des connaissances en matière de regex pourrait créer une regex qui inclurait également la tabulation / le saut de ligne dans la recherche.
Vous pourriez couper la ficelle et vérifier le résultat. Malheureusement, il n'existe pas de solution native en javaScript pour cela. Vous pourriez écrire une fonction du type
return str.replace(/^\s\s*/, '').replace(/\s\s*$/, '');
(Voir http://blog.stevenlevithan.com/archives/faster-trim-javascript pour de nombreux exemples)
Maintenant, vous pouvez faire
if (trim(myString).length === 0) {
// String contains only whitespace
}
Il faudrait d'abord créer une copie de la chaîne originale si elle ne doit pas être modifiée.
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.