#javascript #regex #filepath
#javascript #регулярное выражение #путь к файлу
Вопрос:
У меня есть путь к файлу, например. "/abc/xyz/123/file.txt"
. Как я могу получить корневой каталог, т.Е. «abc», по этому пути. Я попробовал следующий код:
var path = "/abc/xyz/123/file.txt";
var rootDir = path.split("/")[1];
Это работает для приведенного выше примера. Но путь также может быть в следующих форматах:
1. "abc/xyz/123/file.txt"
2. "abcxyz123file.txt"(backslash instead of forward slash path separator)
Как это сделать, охватывая все сценарии? Можно ли это сделать с помощью regex
?
Ответ №1:
попробуйте это match(/[^/\] /)
var reg = /[^/\] /
console.log( "abc/xyz/123/file.txt".match(reg) )
console.log( "/abc/xyz/123/file.txt".match(reg) )
console.log( "\abc\xyz\123\file.txt".match(reg) )
Комментарии:
1. Допустимо ли использовать разделитель путей как нечто отличное от «/» в разных ОС?
2. нет, не думаю, что так … было бы ужином странно иначе