web-dev-qa-db-fra.com

Comment puis-je déterminer si une chaîne est non nulle et pas seulement des espaces dans Groovy?

Groovy ajoute la méthode isAllWhitespace() à Strings, ce qui est bien, mais il ne semble pas y avoir de moyen bon de déterminer si une chaîne a autre chose que juste un espace en elle.

Le mieux que j'ai pu trouver est:

myString && !myString.allWhitespace

Mais cela semble trop verbeux. Cela semble être une chose si courante pour la validation qu’il soit nécessaire de déterminer plus simplement cela.

106
cdeszaq

Une autre option est

if (myString?.trim()) {
  ...
}
209
tim_yates

Vous pouvez ajouter une méthode à String pour la rendre plus sémantique:

String.metaClass.getNotBlank = { !delegate.allWhitespace }

que fais-tu:

groovy:000> foo = ''
===> 
groovy:000> foo.notBlank
===> false
groovy:000> foo = 'foo'
===> foo
groovy:000> foo.notBlank
===> true
8
doelleri