js 字符串解码

2024-01-30  本文已影响0人  泪滴在琴上

示例 1:
输入:s = "3[a]2[bc]"
输出:"aaabcbc"
示例 2:
输入:s = "3[a2[c]]"
输出:"accaccacc"
示例 3:
输入:s = "2[abc]3[cd]ef"
输出:"abcabccdcdcdef"
示例 4:
输入:s = "abc3[cd]xyz"
输出:"abccdcdcdxyz"
实现:

var decodeString = function(s) {
    while(/\d+\[[a-zA-Z]+\]/.test(s)){
        s=s.replace(/\d+\[[a-zA-Z]+\]/g,(match)=>{
            const repeatNum = parseInt(match.match(/^\d+/)[0])
            const str = match.match(/\[[a-zA-Z]+\]/)[0]
            let subStr = str.replace(/[\[\]]/g,'')
            return subStr.repeat(repeatNum)
        })
    }
    return s;
};
上一篇 下一篇

猜你喜欢

热点阅读