使用Javascript从路径中获取文件名

DCD*_*DCD 27 html javascript jquery path

我有一个完整的图像路径,我正在使用jquery读取,$('img.my_image').attr('src')但我只想要文件名部分(丢弃路径).

是否有任何内置函数可以执行此操作,还是正则表达式是唯一的选项?

ras*_*ash 64

var Filename= path.split('/').pop()
Run Code Online (Sandbox Code Playgroud)

  • 在我看来,这比接受的答案要好. (2认同)

Gre*_*ire 45

var fileNameIndex = yourstring.lastIndexOf("/") + 1;
var filename = yourstring.substr(fileNameIndex);
Run Code Online (Sandbox Code Playgroud)

  • 不适用于linux和mac你需要拆分(\和/); (3认同)

Ali*_*deh 7

function getFileName(path) {
return path.match(/[-_\w]+[.][\w]+$/i)[0];
}
Run Code Online (Sandbox Code Playgroud)


Rub*_*atc 5

我找到了一个更好的版本处理unix和类似windows的路径字符串.

1号:

var unix_path = '/tmp/images/cat.jpg';
console.log(unix_path.replace(/^.*[\\\/]/, ''));

var win_path = 'c:\\temp\images\cat.jpg';
console.log(win_path.replace(/^.*[\\\/]/, ''));
Run Code Online (Sandbox Code Playgroud)

输出将是cat.jpg

2号:(也许更快)

var unix_path = '/tmp/images/cat.jpg';
console.log(unix_path.split(/[\\\/]/).pop());

var win_path = 'c:\\temp\images\cat.jpg';
console.log(win_path.split(/[\\\/]/).pop());
Run Code Online (Sandbox Code Playgroud)

输出将是cat.jpg