为了账号安全,请及时绑定邮箱和手机立即绑定

正则匹配括号(数量不确定),然后为每个括号增加一个索引来传给后台

正则匹配括号(数量不确定),然后为每个括号增加一个索引来传给后台

子衿沉夜 2019-03-14 10:15:28
增加填空,题干部分有不确定的空,由括号来确定,左右括号转义为 != = !。然后这个空需要传一个key值给后台,方便来存放该括号下的答案。例如:abcd()efgh()ijkl()mn() 如何变为 abcd(#1)efgh(#2)ijkl(#3)mn(#4) 括号需要增加一个索引
查看完整描述

3 回答

?
泛舟湖上清波郎朗

TA贡献1818条经验 获得超3个赞

上面的思路都很对,在本人项目里采用了类似于第二种的方法:


     const str = 'abcd()efgh()ijkl()mn()';

     let index = 0;

     function replacer() {

       index++;

       return ['!=', index, '=!'].join(' ');

     }

     let strTrans = str.replace(/([((])(\s*)([))])/g, replacer);

     console.log(strTrans);


查看完整回答
反对 回复 2019-04-02
?
繁花不似锦

TA贡献1851条经验 获得超4个赞

我说个大概思路:

  1. 把abcd()efgh()ijkl()mn() 用()切,切成字符数组

  2. 再把这个字符数组循环生成(#序号),拼接成abcd(#1)efgh(#2)ijkl(#3)mn(#4)


查看完整回答
反对 回复 2019-04-02
  • 3 回答
  • 0 关注
  • 1372 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信