3 votes

Comment tester l'absence d'espaces dans une chaîne de caractères à l'aide d'une expression rationnelle ?

Comment tester l'absence d'espaces dans une chaîne de caractères à l'aide d'une expression rationnelle ? J'utilise JQuery

var postcode = $(this), val = postcode.val();

if(val.test(NO WHITESPACE)){
   ...
}

Toute aide est appréciée, Merci

4voto

Pointy Points 172438
if (/\s/.test(string)) alert("OH NO THERE IS FILTHY WHITESPACE IN THAT STRING");

Le " \s " ... uhh, chose, dans une regex signifie "tout caractère d'espacement". Plus précisément, cela signifie la même chose que ceci :

[ \f\n\r\t\v\u00A0\u2028\u2029]

c'est-à-dire l'espace, le saut de page, le saut de ligne, le retour chariot, la tabulation, la tabulation verticale et certains caractères de type espace du latin étendu et d'Unicode.

1voto

Ben Alpert Points 30381

Il suffit d'utiliser :

if(!val.match(/\s/)) {
  ...
}

1voto

KooiInc Points 38845

S'il ne s'agit que d'espaces, vous n'avez pas besoin d'une RegExp : pas d'espaces = val.indexOf(' ') < 0

0voto

Sangeet Menon Points 2483

Utilisez le code suivant : il remplacera tous les espaces vides

string.replace(/^\s+|\s+$/g,'')

En fait, il supprimerait même les caractères de nouvelle ligne

Les espaces sont en fait supprimés par \s

0voto

James Kyburz Points 4352
var valid = !/\s/.test('IHaveNoWhiteSpace')

valid ; //# => true

var valid = !/\s/.test('I Have WhiteSpace')

valid ; //# => false

var isValidPostCode = /^[a-z]{2}\d{3}[a-z]{2}$/i.test('TN809EX');

isValidPostCode ; //# => false

Prograide.com

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.

Powered by:

X