如何使代码在javascript中使用循环操作特定条件下的字符串?

如何使代码在javascript中使用循环操作特定条件下的字符串?,javascript,string,Javascript,String,这里有一个JSON数据,在JSON解析之后,我们可以将数据属性作为字符串 data:"BUSINESS.id,BUSINESS.stokens[],BUSINESS.plist(BUSINESS.inventory),BUSINESS.bslist(BUSINESS.srvinventory),BUSINESS.sur(USER.store.roles.role)[{scdate,sudate,rid,urname,sid,suid}]" 我需要按具体要求来划分 text = BUSINESS

这里有一个JSON数据,在JSON解析之后,我们可以将数据属性作为字符串

data:"BUSINESS.id,BUSINESS.stokens[],BUSINESS.plist(BUSINESS.inventory),BUSINESS.bslist(BUSINESS.srvinventory),BUSINESS.sur(USER.store.roles.role)[{scdate,sudate,rid,urname,sid,suid}]"
我需要按具体要求来划分

text = BUSINESS.id,BUSINESS.stokens[]
list = BUSINESS.plist(BUSINESS.inventory),BUSINESS.bslist(BUSINESS.srvinventory)
object = BUSINESS.sur(USER.store.roles.role)[{scdate,sudate,rid,urname,sid,suid}]

确保编程时不要把业务看作字符串也可以是

data:"id,stokens[],plist(inventory),bslist(srvinventory),sur(USER.store.roles.role)[{scdate,sudate,rid,urname,sid,suid}]"

text = id,stokens[]
list = plist(inventory), bslist(srvinventory)
object = sur(USER.store.roles.role)[{scdate,sudate,rid,urname,sid,suid}]
用javascript编写此字符串的代码

我试图基于(“,”)拆分代码,但它不能满足要求,因为我们需要为文本、列表和对象分别编写代码

请根据给定要求分割字符串

正文只有一个部分。或[]

列表中只有()


对象是()[{}]

的组合,您可以将
regex
String.prototype.match一起使用
let data=“BUSINESS.id,BUSINESS.stokens[],BUSINESS.plist(BUSINESS.inventory),BUSINESS.bslist(BUSINESS.srvinventory),BUSINESS.sur(USER.store.roles.role)[{scdate,sudate,rid,urname,sid,suid}]”;
let out=data.match(/(.\[\]),?(.\(.\),?(.\(.\).\[\{.\}]),?/);

console.log(out.slice(1,4))
同一类型的过滤器会组合在一起还是会混淆?它们可能会混淆只有当文本、列表和对象按顺序排列时才起作用,如果没有顺序,这个正则表达式就不能正常工作了,这就是我问你的问题,你能给我提供一个可以处理混合字符串的正则表达式吗?