求一个js正则表达式

规则:
将字符串中的【xxx】 替换为 <input name='xxx' value='' />,【】中的字符串不是固定的。

举个栗子:
字符串:"我们班级有【number】个人"
结果:"我们班级有<input name='number' value='' />个人"

谢谢大神了~!

阅读 1.8k
3 个回答
function trans(str) {
    return str.replace(/【([^】]+)】/g, (str, $1) => {
        return `<input name='${$1}' value='' />`;
    })
}

// 我们班级有<input name='number' value='' />个人
console.log(trans('我们班级有【number】个人'))
function newStr(str){
return str.replace(/(.*)【(.*)】(.*)/, (p, p1, p2, p3) => {
    return p1 + `<input name='${p2}' value='' />` + p3;
})}

其实这个完全用不到正则式也可以替换的,只不过是2个替换

str.replace("【","<input name='")
str.replace("】","' value='' />")
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题