Как я могу получить подстроку из середины пути к файлу в VBScript?

У меня есть следующая строка в VBScript:

myPath = "C:\Movies\12 Monkeys\12_MONKEYS.ISO"

Путь C:\Movies\ всегда будет одинаковым. Итак, вот еще один путь в качестве примера:

myPath = "C:\Movies\The Avengers\DISC_1.ISO"

Мой вопрос в том, как я могу вытащить только имя папки с фильмами, чтобы в приведенных выше примерах я получил:

myMovie = "12 Monkeys"
myMovie = "The Avengers"

Есть ли способ использовать RegEx с этим? Или я должен просто сделать несколько вызовов подстроки и индекса? Как это сделать проще всего?


person Ethan Allen    schedule 09.12.2012    source источник


Ответы (2)


Рассмотрим код ниже:

arrPathParts = Split(myPath, "\");
myMovie = arrPathParts(2);

Разделите строку, где разделителем является символ обратной косой черты. Разделение строки возвращает массив строк. Ваш фильм является третьим элементом в массиве строк.

person Mickael Caruso    schedule 09.12.2012

http://regexr.com?3332n

(?<=C:\\Movies\\).*?(?=\\)

Вы используете утверждения, чтобы найти строку, которая начинается с C:\Movies, но не включает ее в результаты, затем жадный оператор, чтобы найти все до косой черты. Вы используете утверждение просмотра вперед, чтобы исключить косую черту из результатов.

person Jack    schedule 09.12.2012
comment
рассмотрите возможность удаления этого ответа, поскольку он не относится к VBScript. - person Ekkehard.Horner; 09.12.2012