我想在 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/