парни подскажите с lua ,как с трёх текстовых документов (1.txt,2.txt,3.txt) взять с первых строк определённые слова и вписать в четвёртый (4.txt) и так же со следующими строками
Приводите содержимое документов и что в итоге должно получится.
1.txt - 81 351920450784
2.txt - 81 109.248.51.148 24531 aaaaaa 2bb2bbb2b
3.txt - 81 Mozilla/5.0 (Linux; Android 4.0; F3555 Build/23.2.B.4.70) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.125 Mobile Safari/537.362
результат
4.txt - 351920450784:nnnnnn|109.248.51.148:24531:aaaaaa:2bb2bbb2b|Mozilla/5.0 (Linux; Android 4.0; F3555 Build/23.2.B.4.70) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.125 Mobile Safari/537.362
из 1.txt берём номер (351920450784) добавляем : двоеточие и слово (оно одинаково во всех строках)
знак |
из 2.txt берём 109.248.51.148 24531 aaaaaa 2bb2bbb2b (вместо пробелов ставим
знак |
из 3.txt берём Mozilla/5.0 (Linux; Android 4.0; F3555 Build/23.2.B.4.70) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.125 Mobile Safari/537.362
и так по порядку все строки (81 это номер строки)
--lua
local f1 = io.open([[C:\1.txt]], "r")
local f2 = io.open([[C:\2.txt]], "r")
local f3 = io.open([[C:\3.txt]], "r")
local f4 = io.open([[C:\4.txt]], "wb")
if f1 and f2 and f3 and f4 then
-- чтение файлов в массивы
local arr1, arr2, arr3 = {}, {}, {}
for v in f1:lines() do arr1[#arr1+1] = v:match("%d+%s+(.+)") end
for v in f2:lines() do arr2[#arr2+1] = string.gsub(v:match("%d+%s+(.+)"), " ", ":") end
for v in f3:lines() do arr3[#arr3+1] = v:match("%d+%s+(.+)") end
f1:close() f2:close() f3:close() -- закрыть файлы
local min = math.min (#arr1, #arr2, #arr3)
for i = 1, min do -- запись в файл
f4:write(arr1[i])
f4:write(":nnnnnn|")
f4:write(arr2[i])
f4:write("|")
f4:write(arr3[i])
f4:write("\r\n")
end
f4:close() -- закрыть файл
else
log ("Какой-то из файлов не открылся или не найден")
end
работает отлично и быстро ,спасибо . с lua быстрее работает чем с просто uopilot
Русская версия Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)