Итак, у меня есть пример пути c: \ folder1 \ folder2 \ folder3 \ file.txt Я хочу, чтобы regex извлекал folder3 \ file.txt
Я подумал, что это будет все после
1. a slash
2. followed by any number of non slash characters
3. followed by a slash
4. followed by any number of non slash characters
5. followed by a dot
5.1 that is not (eventually) followed by a slash
У меня большая часть работы работает
\\(?=[^\\]*(?=\\(?=[^\\]*(?=[\.]))))(.*)
, если я не сделаю это:
c: \ folder1 \ folder2 \ fol.der3 \ file.txt (fol.der3 - это имя каталога)
или это
c: \ folder1 \ folder2 \ folder3 \ file.txt \ (технически здесь нет файла)
Итак, у меня есть все, кроме шага 5.1
Итак, я попытался добавить отрицательный прогноз после моего поиска точек, чтобы исключить точки, которые имеют sla sh где-то после них:
(?=[\.][^\\]*(?![\\]))
но это не сработало
Есть идеи?
Спасибо Крис