Regex: начать поиск с одного символа и закончить с другим - PullRequest
0 голосов
/ 10 февраля 2020

Я пытаюсь удалить имя файла по полному пути, выполнив следующие действия:

  1. Поиск последнего '\' в пути
  2. Выберите имя файла до '|' встречается

Пример: c: \ folder1 \ subfolder1 \ subfolder2 \ example.xls | оборот 12345 на 2020-01-01

Вот регулярное выражение, которое у меня есть, которое приводит меня к " example.xls | rev. 12345 на 2020-01-01 "

\\([^\\]*)$

Мне нужен только "example.xls", а не остальные.

Я полный новичок в RegEx ie и, похоже, не могу понять, как искать от последнего "\" в пути до "\".

1 Ответ

1 голос
/ 10 февраля 2020

Вы хотите искать до |, но $ соответствует концу строки.

Сделайте ваш набор символов исключающим backsla sh и |.

\\([^\\|]*)\s*\|

DEMO

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...