我是否可以用特定字符串替换$n
元素?
在我的示例中,$1
元素。
例如,我想替换url的最后一个元素
"http://my.domain.com/sub/file.extension"
我的字符串"other.other"
。
我的正则表达式是这样的:/([^/]+)\.extension$
但它也取代了“file”之前的斜杠。
这是一个完整的例子:
var url = "http://my.domain.com/sub/file.extension";
var replace = "other.other";
var regex = new RegExp("/([^/]+)$");
console.log(url.replace(regex,replace));
我知道我可以在我的替换中添加斜杠,如下所示:var replace = "/other.other";
但我想要一种不同的方法,我也可以在其他项目中使用。
简而言之,我正在寻找一种可以替换没有分隔符的东西替换为。
的可能性PS: 我读到了一些关于积极前瞻的内容,但我无法让它发挥作用。 我知道this Post和this Post,但这不是我想要的。
答案 0 :(得分:1)
您的代码中进行了一些小改动。请尝试以下代码并检查
var url = "http://my.domain.com/sub/file.extension";
var replace = "other.other";
var regex = new RegExp("([^/]+)$");
console.log(url.replace(regex,replace));
答案 1 :(得分:0)
var url = "http://my.domain.com/sub/file.extension";
url = url.split("/");
url.pop();
url.push("other.other");
url = url.join("/");
console.log(url);