Можно ли установить значения по умолчанию для нескольких переменных в Lua? Кажется, я с трудом справляюсь с этим.Lua - Установить значение по умолчанию для нескольких переменных
Моя логика: 1) Можно установить значения для нескольких переменных, как это:
> one, two = "uno", "dos"
> print(one)
uno
> print(two)
dos
2) Можно установить значения по умолчанию для переменных, как это:
> foo = string.match("/dir/example.txt", "dir/(..)/.*") or "ab"
> return print(foo)
ab
3) Когда я пытаюсь установить значения по умолчанию для нескольких переменных, у меня возникает проблема:
> foo, bar = string.match("/dir/xx/xx/example.txt", "/dir/(..)/(..)/.*")
> print(foo)
xx
> print(bar)
zz
> foo, bar = string.match("/dir/xx/xx/example.txt", "/dir/(..)/(..)/.*") or "ab","cd"
> print(foo)
xx
> print(bar)
cd
То, что я подозреваю, это то, что он обрабатывает все до последней запятой как значение «foo», и все после него как значение «bar».
Используя этот пример, можно ли указать, что они будут считаться значениями по умолчанию, если string.match не предоставляет значение?
FWIW, я попробовал кучу разных способов инкапсулировать «ab» и «cd», чтобы они понимались как значения по умолчанию вместе, d размахивал форумами, но не мог найти аналогичный вопрос, не говоря уже о ответе, прежде чем я решил попробовать разместить здесь сообщение. :) – NNLocke
'if not foo then foo, bar =" ab "," cd "end' –