Это относится к предыдущему вопросу: Проверка значений в нескольких местах и возвращение совпадения, только если источники уникальны .
По сути, функция полагается на данные, находящиеся вформат:
local vendors = {
Asda = {Kellogg = true, Cadbury = true, Nestle = true, Johnsons = true, Pampers = true, Simple = true},
Tesco = {Kellogg = true, Cadbury = true, Nestle = true, Johnsons = true},
Spar ={Nestle = true, Johnsons = true, Pampers = true, Simple = true}
}
Тем не менее, я собираю данные путем циклического перемещения по путям и добавления их в таблицу, которая просто создает список, такой как:
Asda = {"Kellogg", "Cadbury", "Nestle", "Johnsons", "Pampers", "Simple"}
Существуетя могу добавить их другим способом:
local Asda = {}
for index = 1, 9 do
local pathAsda = factReference -- some path location which changes by index increasing
if pathAsda ~= "" then
Asda[#Asda+1] = {[Asda] = true} -- table.insert(Asda, pathAsda), for the previously mentioned format
end
Что бы меня оставило с:
Asda= {{Kellogg = true}, {Cadbury = true}, {Nestle = true}, {Johnsons = true}, {Pampers = true}, {Simple = true}}
Я бы тогда использовал:
table.insert(vendorSources,Asda)
Ни один из этих форматовработайте с функцией в ответе, и я не могу понять, как изменить какой-либо раздел, чтобы это работало.
function intersection(s1, s2) -- finds out if two sets (s1 & s2) overlap
local output = {}
for key in pairs(s1) do
output[#output + 1] = s2[key]
end
return output
end
Есть ли способ отредактировать любой список (Asda)быть в правильном формате?