基于已发现内容的高级查找和替换-Javascript

基于已发现内容的高级查找和替换-Javascript,javascript,Javascript,我试图用一个脚本简化一个过程。现在的情况是,我有一个相当大的脚本,它有很多base-64编码字符串,我想用解码版本(使用atob和btoa)来替换它们。例如,我有atob(“MHhfZXhwb3J0”),并想用atob(“MHhfZXhwb3J0”)的输出替换它,即“0x\u export”。我尝试过为atob(“)拆分代码,然后保存内容并替换它们,但由于某种原因,它在某个时候会中断。我尝试过使用string.replace(/*/g,*),但您似乎无法在replace中使用函数。如果我不能最好

我试图用一个脚本简化一个过程。现在的情况是,我有一个相当大的脚本,它有很多base-64编码字符串,我想用解码版本(使用
atob
btoa
)来替换它们。例如,我有
atob(“MHhfZXhwb3J0”)
,并想用
atob(“MHhfZXhwb3J0”)
的输出替换它,即
“0x\u export”
。我尝试过为
atob(“
)拆分代码,然后保存内容并替换它们,但由于某种原因,它在某个时候会中断。我尝试过使用
string.replace(/*/g,*)
,但您似乎无法在replace中使用函数。如果我不能最好地描述我的问题,我很抱歉,因此如果有人有进一步的问题,我很乐意回答

下面是我尝试做的一个小例子:

开始的示例脚本:
功能测试(回调、编号、原因){
if(数字!=atob(“MA=”){
log(atob(“RmFpbGVkOiA=”)+reason+atob(“LiBQbGVhc2UgdHJ5IGFnYWluLg=”));
}否则{
回拨(号码);
}
}
您可以传递要替换的函数-您可以将整个代码作为字符串粘贴到某个Javascript编辑器中,然后用解码的文本替换
atob(“…”)
的每个实例:

const inputScript=`
函数测试(回调、编号、原因){
if(数字!=atob(“MA=”){
log(atob(“RmFpbGVkOiA=”)+reason+atob(“LiBQbGVhc2UgdHJ5IGFnYWluLg=”));
}否则{
回拨(号码);
}
}
`;
const outputScript=inputScript
.replace(/atob\(([^\“]+)“\)/g,({uu,p1)=>`${atob(p1)}`)
.trim();

console.log(outputScript)
Wow!我不知道这是可能的!这比我预期的效果要好!我肯定会经常使用它!谢谢你的回答!但是一个问题是,为什么大多数网站说这不可能或必须使用
RegExp
?你是什么意思,哪些网站这么说?我猜他们错了。