0

我知道这很荒谬,但我坚持

我在 asp classic 中有一个使用 fileupload 的文件路径

文件路径是C:\FakePath\3.jpg

我想在一个变量中检索它,这样它只会给我3.jpg

substring()substr()包括 3 我不知道为什么

logopath = C:\FakePath\3.jpg;
logopath = logopath.substring(10);
4

5 回答 5

2

尝试这个

'C:\\FakePath\\3.jpg'.split('\\').pop();//“3.jpg”

或(正则表达式)

'C:\\FakePath\\3.jpg'.replace(/^.*\\/, '');   // "3.jpg"

在此处输入图像描述

于 2012-12-26T11:56:44.853 回答
1

If you'd like to solve it in classic ASP, plesae try this.

<%
dim aryPath
aryPath = Split("C:\FakePath\3.jpg","\")
Response.Write aryPath(2)
%>

Hope it could be helpful.

于 2012-12-26T13:13:27.007 回答
1
logopath = encodeURIComponent( logopath ).replace( /.+FakePath%0/, '' )

'\3' 被解释为八进制转义序列,它指向不可打印的 ASCII 字符。

于 2012-12-26T12:56:01.287 回答
1

如果您希望使用子字符串:

var str="C:\\FakePath\\3.jpg";
var imgName = str.substring(12);
于 2012-12-26T11:59:23.510 回答
1

使用这样的代码:

function FileChanged(input) {
    var fullPath = input.value;
    var index = fullPath.lastIndexOf("\\");
    var fileName = (index < 0) ? fullPath : fullPath.substr(index + 1);
    alert(fileName);
}​

中间的两条线是您所需要的:它们将采用最后一个斜线之后的值。这样不管路径是什么,它总是只返回文件名。

现场测试用例

于 2012-12-27T09:37:53.333 回答