удалить последнюю папку из path в nodejs с завершением и без трассировки /

#javascript #node.js

#javascript #node.js

Вопрос:

Предположим, у меня есть путь

 C:/Oracle/ or C:/Oracle
 

Как я могу удалить последнюю папку и получить результат в виде

 c:/
 

Комментарии:

1. Использование регулярных выражений: path.match(/(.*/)[^/] /?/)?.[1]

2. Поскольку это путь Windows, он должен быть C:Oracle` or C:Oracle `

Ответ №1:

Для работы с path существует path модуль по умолчанию

 const path = require('path')
console.log(path.join('c:/Oracle', '../'))
 

Комментарии:

1. И вы всегда должны использовать модуль path, чтобы избежать проблем с совместимостью операционной системы!

2. или path.resolve() ? Я никогда не знаю различий между join , resolve , normalize и т.д., Потому что все они, кажется, делают одно и то же и в конечном итоге дают вам нужный URL-адрес

3. Я связал документы, различия там углубляются

Ответ №2:

     inputFilePath = "C:/Oracle/sub1/sub2"

    var parts = inputFilePath.split(new RegExp("/"));

    parts.forEach(function(part, index, array) {

        var sub = part   "/"
        console.log("Foldernames: "   sub);
    });
 

Вывод:

Имена папок: C:/
Имена папок: Oracle/
Имена папок: sub1 /
Имена папок: sub2/