str.match(/.{1,3}/g)
Remarque: Utiliser {1,3}
au lieu de simplement en {3}
d'inclure le reste pour les longueurs de chaîne qui ne sont pas un multiple de 3, e.g:
"abcd".match(/.{1,3}/g); // ["abc", "d"]
Un couple de plus de subtilités:
- Si votre chaîne peut contenir des sauts de ligne (dont vous voulez compter comme un personnage plutôt que le fractionnement de la chaîne), puis l'
.
de ne pas capturer les. Utiliser /[\s\S]{1,3}/
à la place. (Merci @Mike).
- Si votre chaîne est vide, alors
match()
sera de retour null
lorsque vous attend peut-être un tableau vide. Protéger contre cette en ajoutant || []
.
Donc, vous pouvez vous retrouver avec:
var parts = str.match(/[\s\S]{1,3}/g) || [];