49 votes

Regex pour pas vide et pas d'espace blanc

J'essaie de créer une expression régulière qui renverra false si le modèle String contient des espaces ou est vide. pour l'instant j'ai ça

 [^\s] 

Je pense que cela garantira que la chaîne ne contient pas d'espace blanc, mais je ne sais pas comment vérifier également qu'elle n'est pas vide. Toute aide serait appréciée.

65voto

Jan. Points 1088

/^$|\s+/ si cela correspond, il y a un espace ou c'est vide.

26voto

Linus Kleen Points 15925

La plupart des moteurs d'expressions régulières prennent en charge les séquences d'échappement "contre-partie". C'est-à-dire que pour \s (espace blanc) il y a sa contrepartie \S (non-espace blanc).

En utilisant cela, vous pouvez vérifier s'il y a au moins un caractère non blanc avec ^\S+$ .

PCRE pour PHP a plusieurs de ces séquences d'échappement .

12voto

Kam Hoe Points 61

/^$|\s+/ Cela correspond lorsque des espaces vides ou blancs

/(?!^$)([^\s])/ Cela correspond quand ce n'est pas vide ou des espaces blancs

6voto

Truchainz Points 705

Un peu tard, mais voici une expression régulière que j'ai trouvée qui renvoie 0 correspondance pour les espaces vides ou blancs :

 /^(?!\s*$).+/

Vous pouvez tester cela sur regex101

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