Перейти к содержимому
  • 0
1kovand1

Как разбить одну переменную на две

Вопрос

Значит мне надо чтобы если в переменной обнаружен(ы) пробел(ы), то она разбивалась на две и более частей (в зависимости от кол-ва пробелов)

Например есть переменная input = "abc def ghi", она через некий код должна превратиться в переменные

output1 = "abc"

output2 = "def"

output3 = "ghi"

 

P.S нужно для программки на OpenComputers

Изменено пользователем 1kovand1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Рекомендуемые сообщения

  • 0
Значит мне надо чтобы если в переменной обнаружен(ы) пробел(ы), то она разбивалась на две и более частей

 Используй магию шаблонов

input = "abc def ghi"
output={}
for substr in input:gmatch("(%S+)") do
  output[#output+1]=substr
end
И еще вопросик, можно ли из значения переменной взять первые несколько символов, а остальные отбросить, например: input = "ABCDEFGH" через некий код превращается в  output = "ABC"
input = "ABCDEFGH"
output = input:sub(1,3)
Изменено пользователем Zer0Galaxy

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0

И еще вопросик, можно ли из значения переменной взять первые несколько символов, а остальные отбросить, например:

input = "ABCDEFGH" через некий код превращается в 

output = "ABC"

Изменено пользователем 1kovand1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0

Небольшое дополнение к сказанному @Zer0Galaxy

output1,output2,output3 = table.unpack(output)
для компактного присваивания значений таблицы целевым переменным.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0

Ну, тогда уже так:

output1,output2,output3 = input:match("(%S+)%s+(%S+)%s+(%S+)")

если количество переменных строго определено

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вы вставили отформатированное содержимое.   Удалить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.


×
×
  • Создать...