Я хотел бы удалить имя файла из пути с помощью JavaScript
используя Javascript, я хотел бы удалить имя файла из конца строки (путь+имя файла), оставив мне только путь к каталогу.
будут ли регулярные выражения идеальными? Или есть более простые способы сделать это с помощью объекта string?
Спасибо за любую помощь!
- - - - ОТВЕТИЛ И ОБЪЯСНИЛ - - -
целью этого кода было открыть finder в каталоге. Данные, которые я смог извлечь, включали имя файла - так как я только пытался чтобы открыть finder (mac)в этом месте, мне нужно было удалить имя файла. Вот что у меня получилось:
var theLayer = app.project.activeItem.selectedLayers[0];
//get the full path to the selected file
var theSpot = theLayer.source.file.fsName;
//strip filename from the path
var r = /[^/]*$/;
var dirOnly = theSpot.replace(r, '');
//use 'system' to open via shell in finder
popen = "open"
var runit = system.callSystem(popen+" "+"""+dirOnly+""");
3 ответов
var urlstr = '/this/is/a/folder/aFile.txt';
var r = /[^\/]*$/;
urlstr.replace(r, ''); // '/this/is/a/folder/'
вы не указали никаких входных данных выборки.
предполагая, что у вас всегда есть каталог, то следующее будет работать. Это занимает все до (но не включая) последнего Слэша.
test = "/var/log/apache2/log.txt";
console.log(test.substring(0, test.lastIndexOf("/")));
вы можете использовать substring и indexOf:
var url = 'asdf/whatever/jpg.image';
url.substring(0, url.lastIndexOf('/'))