我有一个字符串“D:\folder\image.jpg”,我想把它改成“ http://ip/VDrive/folder/image.jpg”。
我试过这样的事情:
var str = "D:\folder\image.jpg";
str = str.replace("D:\\", "http://ip/VDrive/");
result = str.replace("\\", "/");
但它不起作用。我直接从VS2008编辑了外部js文件我希望它与它无关。
请帮我解决一下这个。
我有一个字符串“D:\folder\image.jpg”,我想把它改成“ http://ip/VDrive/folder/image.jpg”。
我试过这样的事情:
var str = "D:\folder\image.jpg";
str = str.replace("D:\\", "http://ip/VDrive/");
result = str.replace("\\", "/");
但它不起作用。我直接从VS2008编辑了外部js文件我希望它与它无关。
请帮我解决一下这个。
var str = "d:\\folder\\image.jpg"; # Escape here
str = str.replace("d:\\", "http://ip/VDrive/"); # Case sensitive
result = str.replace("\\", "/");
\f被翻译成一个特殊的符号。您需要将起始字符串转义为:
var str = "d:\\folder\\image.jpg";
此外,在替换语句中,如果要使其区分大小写,请考虑正则表达式:
str = str.replace(/D:\\/i, "http://ip/VDrive/");
但这会产生:http://ip/VDrive/folder\image.jpg
因此,将剩余的转换\为正斜杠:
str = str.replace(/\\/g, "/");
做
var str = "d:\folder\image.jpg";
var newstr = str.replace("d:\folder", "http://ip/VDrive/folder/");
console.log( newstr );
演示:jsFiddle
改变
var str = "d:\folder\image.jpg";
到
var str = "d:\\folder\\image.jpg";
那么它的工作原理!
// for a dynamic str
var file = str.split("\");
var to = "http://ip/VDrive/" + file[file.length-1]`
var str = "d:\\folder\\image.jpg";
result = str.replace("d:\\", "http://ip/VDrive/").replace(/\\/g, "/");