Как удалить все символы до последнего соответствующего символа в Lua - PullRequest
0 голосов
/ 18 декабря 2018

Так что я немного запутался в сопоставлении с шаблоном Lua.У меня есть скрипт для записи истории видео, воспроизводимых с MPV, но мне не нужен полный путь, достаточно имени файла, поэтому я хотел удалить все до последнего / символа.В Python я делал бы простые

filename = re.sub(r'.*/', '', path)

Но я ужасно потерпел неудачу, используя сопоставление с шаблоном Lua.Как это сделать?

Пример ввода с желаемым выводом:

>>> path = "/some/path/to/file.mkv"
>>> filename = re.sub(r'.*/', '', path)
>>> filename
'file.mkv'

1 Ответ

0 голосов
/ 18 декабря 2018

Кажется, я понял это сам, о, хорошо.Использовал этот тип шаблона:

path = "/path/to/some/file"
filename = path:gsub(".*/", "")

имя файла теперь содержит только «файл».

РЕДАКТИРОВАТЬ: Как предложено, я изменил path:gsub("(.*).*/",'') на path:gsub(".*/", "") вместо этого, так как это гораздо более читаемый синтаксис,

...