Existe-t-il une alternative à StringUtils.isNumeric qui fait ce que je veux dire?
StringUtils.isNumeric retourne true pour "" et false pour 7.8. C'est bien sûr, c'est documenté comportement, mais vraiment pas le plus pratique pour moi. Est-il autre chose (idéalement dans les communes.lang), qui fournit une isActuallyNumeric?
source d'informationauteur Kevin Peterson
Vous devez vous connecter pour publier un commentaire.
Essayer
isNumber(String)
deorg.apache.commons.lang.math.NumberUtils
.Mise à JOUR -
isNumber(String)
est maintenant obsolète. UtilisationisCreatable(String)
à la place.Merci eav pour le pointage.
Ce n'est pas exactement dans
commons.lang
mais il faudra travailler.NumberUtils.isNumber est obsolète.
Votre devez utiliser
ou
Tous supportent un point décimal de la valeur:
false
(p. 09). Si vous souhaitez obtenir sa valeur, vous devez utiliser NumberUtils.createNumber.0~9
et le point décimal (.
), tout autre caractère (par exemple, un espace ou autre chose) sera de retourfalse
.Par la voie,
StringUtils.isNumberic
s'appliquer a quelques différents entre commons-lang et communes-lang3. Dans commons-lang, StringUtils.isNumberic("") esttrue
. Mais à la chambre des communes-lang3, StringUtils.isNumberic("") estfalse
. Vous pouvez obtenir plus d'informations par des documents.alternativement, vous pouvez vérifier pour voir si n'importe quel personnage correspond à une non Chiffres comme ça..
if(myStr.replaceAll("^$"," ").matches("[^\\d\\.]"))
alors vous savez il y a des choses là-dedans qui n'est pas de 0 à 9 et/ou une .Voici le javascript équivalent (modifier la chaîne de l'expérience)...
http://jsfiddle.net/LzZE6/