算法:5[ab]3[2[c]],输出abababababcccccc

如题,输入5[ab]3[2[c]],输出abababababcccccc。请问如何用JavaScript实现这样一个函数?

阅读 2.3k
2 个回答
function aaa (str) {
    var arr = str.split(/\[|\]/)
    var tmp = 1
    return arr.reduce((a, b) => {
        if (b === '') return a
        var res = a
        if (Number(b) == b) {
            tmp *= Number(b)
        } else {
            res += Array.from({length: tmp}).fill(b).join('')
            tmp = 1
        }
        return res
    }, '')
}
aaa('5[ab]3[2[c]]')
推荐问题