Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> работа с текстом, вписываем строки в текстовый документ
portos
сообщение 4.3.2020, 23:37
Сообщение #1


****

Apprentice
Сообщений: 181
Регистрация: 6.12.2014
Группа: Пользователи
Наличность: 0
Пользователь №: 17.157



парни подскажите с lua ,как с трёх текстовых документов (1.txt,2.txt,3.txt) взять с первых строк определённые слова и вписать в четвёртый (4.txt) и так же со следующими строками
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 5.3.2020, 1:23
Сообщение #2


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26540
Пользователь №: 16.971
Возраст: 29



Приводите содержимое документов и что в итоге должно получится.
Цитата
определённые слова

Нужно конкретнее описывать что за слова. Могут ли они меняться, есть ли рядом с ними другие слова, какие-то числа, символы или еще что-то, чтобы понять что искать.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
portos
сообщение 5.3.2020, 1:45
Сообщение #3


****

Apprentice
Сообщений: 181
Регистрация: 6.12.2014
Группа: Пользователи
Наличность: 0
Пользователь №: 17.157



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 (вместо пробелов ставим (IMG:style_emoticons/default/smile.gif)
знак |
из 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 это номер строки)
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 5.3.2020, 2:16
Сообщение #4


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26540
Пользователь №: 16.971
Возраст: 29



код
Код
--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
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
portos
сообщение 5.3.2020, 2:26
Сообщение #5


****

Apprentice
Сообщений: 181
Регистрация: 6.12.2014
Группа: Пользователи
Наличность: 0
Пользователь №: 17.157



работает отлично и быстро ,спасибо . с lua быстрее работает чем с просто uopilot
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 28.3.2024, 22:20
Designed by Nickostyle