首页 > 解决方案 > javascript - 通过自定义分隔符和自定义级别拆分字符串

问题描述

我的字符串包含','

我有一段字符串,我可以有更多的权力来分割字符串,
RegEx 怎么样。
我的字符串:

a1{
    b1{
        c1=(value),
        c2=value,
    },
},
a2{
    b1{
        c1=value,
        c2=value,
    },
    b2{
        c1=value,
        c2=value,
        c3=value,
    },
    b3{
        c1=value,
    }
},
a3{
    b1{
        c1=value,
    },
    b2{
        c1=value,
        c2=value,
    },
},

我可以按','将上面的字符串分成组吗?
但只是'a'的顶级

前任:

aboveString.split(",");
/*[
  "a1{b1{c1=(value),c2=value,},b2{...etc",
  "a2{b1{c1=value,...etc",
  "a3...etc"
]*/

标签: javascriptregexsplit

解决方案


/,\s?(?=a\d+{)/

正则表达式演示

const str = `a1{
    b1{
        c1=(value),
        c2=value,
    },
},
a2{
    b1{
        c1=value,
        c2=value,
    },
    b2{
        c1=value,
        c2=value,
        c3=value,
    },
    b3{
        c1=value,
    }
},
a3{
    b1{
        c1=value,
    },
    b2{
        c1=value,
        c2=value,
    },
},`

console.log(str.split(/,\s?(?=a\d+{)/))


推荐阅读