gpt4 book ai didi

javascript - 替换较大字符串的一小部分

转载 作者:行者123 更新时间:2023-12-02 20:29:44 25 4
gpt4 key购买 nike

因此,我编写了以下代码来遍历每个 anchor ,获取其 href,如果它包含旧地址,则尝试用新地址替换旧地址。虽然在该网站的代码出现之前很久就明显存在问题,但我需要一个快速而肮脏的解决方案来解决这个问题,所以这个代码就是我想要的。

所以,下面的代码不起作用。 .Replace 显然需要完全匹配,因此它会在“foo is good”句子中找到“foo”,但不会在“fooIsGood”中找到“foo”。

$('a').each(function() {
var addressSwitch = $(this).attr("href");
if (addressSwitch){
var test = addressSwitch.indexOf("http://www.oldaddress.com");
if ( test == 0){
addressSwitch.replace("http://www.oldaddress.com/", "www.newaddress.com");
$(this).attr("href" , addressSwitch);
}
}
});

那么,什么才有效呢?

提前致谢!

最佳答案

.replace()工作正常,但您没有分配替换的值,它需要是:

addressSwitch = addressSwitch.replace("http://www.oldaddress.com/", "www.newaddress.com");

请记住.replace()不会更改原始字符串,它会返回一个替换了值的新字符串。

请记住.attr()还需要一个函数,因此您可以将代码简化为:

$('a[href^="http://www.oldaddress.com"]').attr("href", function(i, href) {
return href.replace("http://www.oldaddress.com/", "www.newaddress.com");
});

关于javascript - 替换较大字符串的一小部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4382407/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com