在sourceConfigPath变量中,它有一个类似"conf/test.json"
的路径,或者它可能有另一个层,如"test/conf/test.json"
。我想只获得"test.json"
部分。
我尝试使用indexOf函数来获取位置,然后使用slice或substr函数来获取'test.json'
部分。但是当indexOf
时它总是返回0。
有人可以帮忙吗?非常感谢!
var position = sourceConfigPath.indexOf('conf');
var newsourceConfigPath = sourceConfigPath.slice(position+4);
或者有更好的方法吗?非常感谢!
答案 0 :(得分:3)
最好的方法是使用path.basename
path.basename()方法返回路径的最后一部分, 类似于Unix基本名称
const path = require('path');
const newSource = path.basename('conf/test.json'); // test.json
您可以使用lastIndexOf
代替indexOf
,但建议使用path.basename
。
const filepath = '/path/to/file.json';
const position = filepath.lastIndexOf('/') + 1; // +1 is to remove '/'
console.log(filepath.substr(position));