请教用js正则替换字符串首尾括号

zzhao1979 2017-06-03 11:37:13

比如下列字符串:
test[1,2,3],he[1,[2,3],(1,2)]he[1,2,n[1],n[2],s(3)]
he[s(1,2,n[1]),k[1]],str[1,n[2]]

要求:需要将he[]替换为he([])
说明:he[]后面的字符串并不是固定的,可能是换行,也可能是其它字符
仅替换he[对应]之间的[]
最终结果:替换后的结果应为
test[1,2,3],he([1,[2,3],(1,2)])he([1,2,n[1],n[2],s(3)])
he([s(1,2,n[1]),k[1]]),str[1,n[2]]
...全文
411 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
a350062174 2017-06-03
  • 打赏
  • 举报
回复

        var a = "test[1,2,3],he[1,[2,3],(1,2)]he[1,2,n[1], n[2],s(3)] \n he[s(1,2,n[1]),k[1]],str[1,n[2]]";
	a = a.replace(/he(\[([^\[]*?(\[[^\[]*?\])*[^\[]*?)+\])/g,'he($1)');
	alert(a); 

87,997

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧