有人可以告诉我如何在JavaScript中执行以下操作吗?我知道如何获取图像的src,我只是想用新的东西替换文件名。
/image/any/path/ANY-TEXT_HERE.png
/image/any/path/NEWTEXT.png
答案 0 :(得分:11)
不区分大小写的版本:
path = path.replace(/(.*)\/.*(\.png$)/i, '$1/NEWTEXT$2')
在/后删除i以使其区分大小写。
答案 1 :(得分:1)
到目前为止,所有其他解决方案都假定实际上 IS 是一个路径。它们仅在至少有一个正斜杠时起作用。此测试函数适用于所有情况,包括空路径:
function rename_img_file(text, newname)
{ // Rename file in a IMG src (no query or fragment)
var re = /^(.*\/)?[^\/]+\.(png|gif|jpe?g)$/i;
var rep_str = '$1' + newname + '.$2';
text = text.replace(re, rep_str);
return text;
}
答案 2 :(得分:0)
var url = "/image/any/path/ANY-TEXT_HERE.png";
var mystring = "NEWTEXT";
var ind1 = url .lastIndexOf('/');
var ind2 = url .lastIndexOf('.');
var new_url = url.substring(0,ind1+1 )+ mystring + url.substring(ind2 );
alert(new_url );
答案 3 :(得分:0)
另一种选择:
var filename = "/image/any/path/NEWTEXT.png";
var splitFilename = filename.split("/");
var newPath = s.slice(0, s.length).join("/") + newFilename;
答案 4 :(得分:0)
javascript对文件的限制。 我假设您想在服务器上执行此操作。如果是这样,您应该使用服务器端脚本,而不是客户端。 也许你在谈论一个ajax脚本 如果你能进一步解释一下,也许我可以伸出援手