Regex вернуть имя файла, удалить путь и расширение файла

У меня есть data.frame, который содержит текстовый столбец имен файлов. Я хотел бы вернуть имя файла без пути или расширения файла. Обычно имена моих файлов нумеруются, но это не обязательно. Например:

df<-data.frame(data=c("a","b"),fileNames=c("C:/a/bb/ccc/NAME1.ext","C:/a/bb/ccc/d D2/name2.ext"))

Я хотел бы вернуть эквивалент

df<-data.frame(data=c("a","b"),fileNames=c("NAME","name"))

но я не могу понять гладкое регулярное выражение, чтобы сделать это с gsub. Например, я могу избавиться от расширения с помощью (при условии, что имя файла заканчивается цифрой):

gsub('([0-9]).ext','',df[,"fileNames"])

Хотя я пробовал различные шаблоны (читая файлы справки regex и похожие решения на этом сайте), я не могу получить регулярное выражение для возврата текста между последним «/» и первым «.». Любые мысли или пожелания к подобным вопросам очень ценятся!

Лучшее, что я получил, это:

 gsub('*[[:graph:]_]/|*[[:graph:]_].ext','',df[,"fileNames"])

Но это 1) не избавляет от всех начальных символов пути и 2) зависит от конкретного расширения файла.

Ответы на вопрос(2)

Ваш ответ на вопрос