我想在 Javascript 中使用 String.replace 执行字符串的全局替换。
在我读到的文档中,我可以用/g 来做到这一点,例如;

var mystring = mystring.replace(/test/g, mystring);
这将替换 mystring 中的所有出现。表达式没有引号。
但是如果我有一个变量要查找,我怎么能不用引号呢?
我试过这样的事情:
var stringToFind = "test";
//第一次尝试
mystring = mystring.replace('/' + stringToFind + '/g', mystring);
//第二次尝试,没有多大意义
mystring = mystring.replace(/stringToFind/g, mystring);
但它们不起作用。有任何想法吗?

最佳答案

你可以使用prototype.js吗?如果是这样,您可以使用 String.gsub,例如

var myStr = "a day in a life of a thing";
 var replace = "a";
 var resultString = myStr.gsub(replace, "g");
 // resultString will be "g day in g life of g thing"

它也将采用正则表达式。对我来说,这是解决它的更优雅的方法之一。 prototypejs gsub documentation

关于javascript - 在 Javascript 中,如何使用 '/' 和 '/g' 内的变量对字符串执行全局替换?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/542232/

10-13 00:53