我有以下几点
astring.replace(/(someregex/g, "replacementstring.$1")
我希望将其存储为某种类型的对象,以便将来可以调用它。显而易见的解决方案是将其存储为两个变量someregex
和replacementstring
,并在将来将其称为astring.replace(someregex, replacementstring + '.$1')
,但这对我来说似乎真的很笨拙。
有没有办法以更简洁的方式存储字符串替换?我现在的想法是将.replace(/someregex/g, "replacementstring.$1")
存储为一个名为stringreplacement
的字符串,并使用eval('astring' + stringreplacement)
。但这看起来很愚蠢。
发布于 2018-07-24 07:01:14
您可以使用currying来定义一个函数,其中一些变量已经预先定义。
例如:
function replace(find, replace) {
return function (string) {
return string.replace(find, replace);
}
}
const replacer = replace(/hello/gi, "G'day");
console.log(replacer('hello fubar'));
https://stackoverflow.com/questions/51488194
复制相似问题