我正在尝试查找并替换类名中的字符串。 我正在使用一个函数,它返回一个类的“元数据”:
e.g:
class="atestclass {action : '/myurl/param1/param2'}"
所以函数metadata.action会返回“/ myurl / param1 / param2”。
现在我需要以通用方式使用regexp更改此值。
所以这是我的RegExp,当然它不起作用:(
var regExp = new RegExp(opts.attribute + '\'.\'','igm');
“opts.attribute”在这种情况下是“action”。现在我需要在“opts.attribute”之后找到引号的第一次出现,并用“opts.value”替换它。
我不知道怎么做,RegExp是我个人的噩梦: - /
答案 0 :(得分:0)
var oldclass="atestclass {action : '/myurl/param1/param2'}";
var regExp = new RegExp("(\\{\\s*"+opts.attribute+"\\s*:\\s*').*?'", 'igm');
var newclass = oldclass.replace(regExp, "$1"+opts.value.replace('$', '$$')+"'");