J'essaie de valider un vecteur de chiffres dans une chaîne, via grepl et regexp. J'ai donc trouvé que grepl ajuste automatiquement les zéros en tête, donc je reçois des réponses erronées. J'ai essayé d'utiliser as.character sans succès.Validation du vecteur de chaîne de chiffres de longueur déterminée
C'est ma fonction:
isValidTest <- function(x){
x <- as.character(x)
grepl("^[[:digit:]]{13}$", x)
}
et mon test:
> isValidTest(c(9788467850703,0759398399, 3002011502068, 0788467850703))
[1] TRUE FALSE TRUE FALSE
lieu avec des citations:
> isValidTest(c(9788467850703,0759398399, 3002011502068, "0788467850703"))
[1] TRUE FALSE TRUE TRUE
note dernier élément du vecteur commençant par 0 0788467850703
que je voudrais récupérer une réponse VRAIE. D'un autre côté, pourquoi as.character
ne fonctionne pas?
Ce n'est pas grepl, tapez 012 sur la console et appuyez sur Entrée, il est 12. Si ce sont des numéros de téléphone, gardez-les sous forme de chaînes. – zx8754
Merci zx !! Quelle faute! – Gabriel