Гораздо проще создать массив, отвечающий вашим потребностям, чем иметь сложные шаблоны.
const data = ['e1','e2','e3','e4','e5','e6'];
const group = (array, groupSize) => array.reduce((results, current, index) => {
if (index % groupSize === 0) {
results.push([current]);
} else {
results[results.length - 1].push(current);
}
return results;
}, []);
console.log(group(data, 3));
Теперь вы можете иметь цикл для строк и цикл внутри для ячеек.