2011-12-02 22 views

Respuesta

53

uso match en conjunción con un indicador global, en lugar de dividir. {1,6} es necesario, para incluir también la última parte de la cadena coincidente. Los patrones son codiciosos por defecto, lo que significa que se iguala todo lo posible. Por lo tanto, .{1,6} solo coincidirá con menos de 6 caracteres al final de una cadena.

'abcdefghijklmnopqrstuvwxyz'.match(/.{1,6}/g); 

Resultado:

["abcdef", "ghijkl", "mnopqr", "stuvwx", "yz"]; 

Tenga en cuenta que el objeto devuelto es una verdadera matriz. Para verificar:

console.log('.'.match(/./g) instanceof Array); //true 

+0

funciona como un encanto! ¡Gracias! – trumank

+1

Tenga en cuenta que '.' no * * coincide con ningún carácter. [Ignora 'Lineterminator's] (http://es5.github.io/#x15.10.2.8). Use '[\ s \ S]' para asegurarse de que funciona en cadenas de varias líneas. – user123444555621

Cuestiones relacionadas