|
Декодер | замена текста. |
|
|
FREEON |
27.1.2019, 10:52
|
Journeyman
Сообщений: 365
Регистрация: 14.2.2017 Группа: Пользователи Наличность: 1197
Пользователь №: 18.346
Возраст: 25
|
Можно ли на базе пилота сделать скрипт который бы заменял текст в файле на нужный? К примеру есть текстовый документ test.txt, в нем находится набор символов которые нечитаемы, но разделены к примеру запятой(или пробелом или ещё каким символом). Код Мы знаем и делаем условие что 1 это привет, 2 допустим имя Максим и так далее. Нужно чтобы пилот сканировал текст и менял символы на нужные слова и результат сохронял в нужном месте. Примеры, готовые скрипты:qwerty перевод на русский: Hfcrkflrf -> Раскладка
Готовый скрипт конвертирует набранный текст в неверной раскладке клавиатуры. Владение методом слепого набора, уменьшает эту вероятность, но неприятности иногда случаются. Также данный метод можно использовать для кодирования своих сообщений или легкого запоминания своих паролей. Например:Цитата $GfHjKm$_Dfvgbh >>> ;ПаРоЛь;_Вампир Код --lua -- Скрипт для перевода английской раскладки в русскую -- Hfcrkflrf -> Раскладка local file= io.open([[C:\123.txt]], "r") -- файл с текстом local result_file = io.open([[C:\456.txt]], "w") -- куда сохранить результат
local t={} t["a"]="ф" t["b"]="и" t["c"]="с" t["d"]="в" t["e"]="у" t["f"]="а" t["g"]="п" t["h"]="р" t["i"]="ш" t["j"]="о" t["k"]="л" t["l"]="д" t["m"]="ь" t["n"]="т" t["o"]="щ" t["p"]="з" t["q"]="й" t["r"]="к" t["s"]="ы" t["t"]="е" t["u"]="г" t["v"]="м" t["w"]="ц" t["x"]="ч" t["y"]="н" t["z"]="я" t["`"]="ё" t["["]="х" t["]"]="ъ" t[";"]="ж" t["'"]="э" t[","]="б" t["."]="ю" t["/"]="." t["A"]="Ф" t["B"]="И" t["C"]="С" t["D"]="В" t["E"]="У" t["F"]="А" t["G"]="П" t["H"]="Р" t["I"]="Ш" t["J"]="О" t["K"]="Л" t["L"]="Д" t["M"]="Ь" t["N"]="Т" t["O"]="Щ" t["P"]="З" t["Q"]="Й" t["R"]="К" t["S"]="Ы" t["T"]="Е" t["U"]="Г" t["V"]="М" t["W"]="Ц" t["X"]="Ч" t["Y"]="Н" t["Z"]="Я" t["{"]="Х" t["}"]="Ъ" t[":"]="Ж" t['"']="Э" t["<"]="Б" t[">"]="Ю" t["?"]="," t["~"]="Ё" t["@"]='"' t["#"]="№" t["$"]=";" t["^"]=":" t["&"]="?"
if file and result_file then -- если файлы открылись for v in file:lines() do result_file:write(string.gsub(v, ".", t).."\r\n") -- поиск и замена текста из таблицы 't' end
file:close() result_file:close() else log ("Файлы отсутствуют или недоступны для чтения/записи") end
URL-decoder(декодер): %D0%A2%D0%B5%D0%BA%D1%81%D1%82 -> Текст
URL применяется всеми и везде и стал неотъемлемой частью Интернета и является идентификации ресурсов(сайтов) в браузерах. Стандарт URL использует набор символов US-ASCII. И имеет серьёзный недостаток, поскольку можно использовать лишь латинские буквы, цифры и несколько знаков пунктуации. Все другие символы необходимо перекодировать. Скрипт размещенный ниже, это, инструмент и поможет раскодировать строку, закодированную подобным алгоритмом. Пример:Цитата %D0%9A%D1%83%D0%BF%D0%B8%D1%82%D1%8C >>> Купить Код --lua log "clear" log "mode compact"
local s="Вставить свой код URL" -- << Для декодирования вставить url-код между "" log(s)
local t={} t["%D0%90"]="А" t["%D0%91"]="Б" t["%D0%92"]="В" t["%D0%93"]="Г" t["%D0%94"]="Д" t["%D0%95"]="Е" t["%D0%81"]="Ё" t["%D0%96"]="Ж" t["%D0%97"]="З" t["%D0%98"]="И" t["%D0%99"]="Й" t["%D0%9A"]="К" t["%D0%9B"]="Л" t["%D0%9C"]="М" t["%D0%9D"]="Н" t["%D0%9E"]="О" t["%D0%9F"]="П" t["%D0%A0"]="Р" t["%D0%A1"]="С" t["%D0%A2"]="Т" t["%D0%A3"]="У" t["%D0%A4"]="Ф" t["%D0%A5"]="Х" t["%D0%A6"]="Ц" t["%D0%A7"]="Ч" t["%D0%A8"]="Ш" t["%D0%A9"]="Щ" t["%D0%AA"]="Ъ" t["%D0%AB"]="Ы" t["%D0%AC"]="Ь" t["%D0%AD"]="Э" t["%D0%AE"]="Ю" t["%D0%AF"]="Я" t["%D0%B0"]="а" t["%D0%B1"]="б" t["%D0%B2"]="в" t["%D0%B3"]="г" t["%D0%B4"]="д" t["%D0%B5"]="е" t["%D1%91"]="ё" t["%D0%B6"]="ж" t["%D0%B7"]="з" t["%D0%B8"]="и" t["%D0%B9"]="й" t["%D0%BA"]="к" t["%D0%BB"]="л" t["%D0%BC"]="м" t["%D0%BD"]="н" t["%D0%BE"]="о" t["%D0%BF"]="п" t["%D1%80"]="р" t["%D1%81"]="с" t["%D1%82"]="т" t["%D1%83"]="у" t["%D1%84"]="ф" t["%D1%85"]="х" t["%D1%86"]="ц" t["%D1%87"]="ч" t["%D1%88"]="ш" t["%D1%89"]="щ" t["%D1%8A"]="ъ" t["%D1%8B"]="ы" t["%D1%8C"]="ь" t["%D1%8D"]="э" t["%D1%8E"]="ю" t["%D1%8F"]="я"
for v in pairs(t) do -- добавление ключей в таблицу, если был "%D0%9A", то добавляется "%d0%9a" t[v:lower()]=t[v] end
for i=32, 127 do t["%" .. string.format("%X", i)]=string.char(i) end -- добавление ключей в таблицу, все символы ascii с 32 по 127
s=s:gsub("%%[Dd][01]%%%x%x", t) -- замена кириллицы s=s:gsub("%%..", t) -- замена спецсимволов log(s) -- результат
Текст задом наперед. Reverser : Зеркальный код. -> .док йыньлакреЗ
Зеркальный код использовал да Винчи в эпоху Возрождения, он в зеркальном стиле писал свои заметки, а также картины. Возможно он подсмотрел эту технику у арабов...кто знает (IMG: style_emoticons/default/smile.gif) Данный скрипт позволяет отзеркалить текст в одну или в обратную сторону. Пример:Цитата Не только Леонардо да Винчи пишет задом наперед! >>> !дерепан модаз тешип ичниВ ад одраноеЛ окьлот еН Код --lua log "clear" log "mode compact" local s="Текст который нужно отзеркалить." log (s) log (s:reverse())
Азбука морзе: Morse to text -> -- --- .-. ... . - --- - . -..- -
Код Морзе, «Морзянка» — способ кодирования букв алфавита, цифр, знаков препинания и других символов при помощи длинных и коротких сигналов, так называемых «точек» и «тире». Конвертирует латиницу в код морзе и обратно. Пример:Цитата Text <<->> - . -..- - Код --lua log "clear" log "mode compact" -- Скрипт для конвертерования текста(ЛАТИНИЦА)в Азбуку Морзе или наоборот. local text=[[Text or - . -..- -]]-- << Введите исходный текст на латинице или код Морзе и запустите скрипт.
log(text)
local t, t1, temp = {}, {}, {} t["A"]=".-" t["B"]="-..." t["C"]="-.-." t["D"]="-.." t["E"]="." t["F"]="..-." t["G"]="--." t["H"]="...." t["I"]=".." t["J"]=".---" t["K"]="-.-" t["L"]=".-.." t["M"]="--" t["N"]="-." t["O"]="---" t["P"]=".--." t["Q"]="--.-" t["R"]=".-." t["S"]="..." t["T"]="-" t["U"]="..-" t["V"]="...-" t["W"]=".--" t["X"]="-..-" t["Y"]="-.--" t["Z"]="--.." for v in pairs(t) do temp[string_lower(v)]=t[v] end for v in pairs(temp) do t[v]=temp[v] end t["1"]=".----" t["2"]="..---" t["3"]="...--" t["4"]="....-" t["5"]="....." t["6"]="-...." t["7"]="--..." t["8"]="---.." t["9"]="----." t["0"]="-----" t["."]="......" t[":"]="---..." t[";"]="-.-.-." t["("]="-.--.-" t[")"]="-.--.-" t["'"]=".----." t['"']=".-..-." t["-"]="-....-" t["/"]="-..-." t["?"]="..--.." t["!"]="--..--" t[","]=".-.-.-" for v in pairs(t) do t1[t[v]]=v end -- таблица для дешифровки, копия 't' только ключи и значения ключей поменяны местами
local x=0 for v in text:gmatch("[%.%- ]") do x=x+1 end -- подсчёт точек, тире и слешей в строке
if x > #text*50/100 then -- если их больше 50%, считаем что передана шифрованная строка text=string.gsub((text .. " "):gsub("(.-) ", t1), " ", " ") -- дешифруем else text=string.gsub(text:gsub("(.)", "%1 "), "[^ ]", t) -- иначе шифруем end log (text)
Конвертирует кириллицу в код морзе и обратно. Пример:Цитата Текст<<->> - . -.- ... - Код --lua log "clear" log "mode compact"
-- Скрипт для конвертирования текста(КИРИЛЛИЦА)в Азбуку Морзе или наоборот. local text=[[Текст или - . -.- ... -]]-- << Введите исходный текст на кириллице или код Морзе и запустите скрипт.
log(text)
local t, t1, temp = {}, {}, {} t["А"]=".-" t["Б"]="-..." t["В"]=".--" t["Г"]="--." t["Д"]="-.." t["Е"]="." t["Ё"]="." t["Ж"]="...-" t["З"]="--.." t["И"]=".." t["Й"]=".---" t["К"]="-.-" t["Л"]=".-.." t["М"]="--" t["Н"]="-." t["О"]="---" t["П"]=".--." t["Р"]=".-." t["С"]="..." t["Т"]="-" t["У"]="..-" t["Ф"]="..-." t["Х"]="...." t["Ц"]="-.-." t["Ч"]="---." t["Ш"]="----" t["Щ"]="--.-" t["Ь"]="-..-" t["Ъ"]="-..-" t["Ы"]="-.--" t["Э"]="..-.." t["Ю"]="..--" t["Я"]=".-.-" for v in pairs(t) do temp[string_lower(v)]=t[v] end for v in pairs(temp) do t[v]=temp[v] end t["1"]=".----" t["2"]="..---" t["3"]="...--" t["4"]="....-" t["5"]="....." t["6"]="-...." t["7"]="--..." t["8"]="---.." t["9"]="----." t["0"]="-----" t["."]="......" t[":"]="---..." t[";"]="-.-.-." t["("]="-.--.-" t[")"]="-.--.-" t["'"]=".----." t['"']=".-..-." t["-"]="-....-" t["/"]="-..-." t["?"]="..--.." t["!"]="--..--" t[","]=".-.-.-" for v in pairs(t) do t1[t[v]]=v end -- таблица для дешифровки, копия 't' только ключи и значения ключей поменяны местами
local x=0 for v in text:gmatch("[%.%- ]") do x=x+1 end -- подсчёт точек, тире и слешей в строке
if x > #text*50/100 then -- если их больше 50%, считаем что передана шифрованная строка text=string.gsub((text .. " "):gsub("(.-) ", t1), " ", " ") -- дешифруем else text=string.gsub(text:gsub("(.)", "%1 "), "[^ ]", t) -- иначе шифруем end log (text)
Выражаю огромную благодарность в написании скриптов нашему великому гуру cirus .
|
|
|
|
|
|
Ответов
cirus |
27.1.2019, 13:38
|
Elder
Сообщений: 3.480
Регистрация: 18.8.2014 Группа: Пользователи Наличность: 27514
Пользователь №: 16.971
Возраст: 29
|
Цитата Ну так добавляйте в правила выше: Нужно регулярку менять, там разделитель запятая. Это уже другое условие, посимвольная замена. Цитата qwerty в йцукен Код --lua local file= io.open([[C:\123.txt]], "r") -- файл с текстом local result_file = io.open([[C:\456.txt]], "w") -- куда сохранить результат
local t={} t["q"]="й" -- все 'q' заменит на 'й' t["w"]="ц" t["e"]="у" t["r-"]="к"
if file and result_file then -- если файлы открылись for v in file:lines() do result_file:write(string.gsub(v, ".", t).."\r\n") -- поиск и замена текста из таблицы 't' end
file:close() result_file:close() else log ("Файлы отсутствуют или недоступны для чтения/записи") end Цитата или же к примеру в морзянку: Пример нужен. Как символы отличать? .- = А - 2 символа -... = Б - 4 символа .--... - если это АБ, то В тут тоже можно найти .-- Тогда уж они должны быть 1 длины.
|
|
|
|
Сообщений в этой теме
FREEON Декодер | замена текста. 27.1.2019, 10:52 cirus --lua
local file= io.open([[C:... 27.1.2019, 11:44 FREEON
[code]--lua
local file= io.open([[C... 27.1.2019, 13:12 NoName212 на php обычно такое делают)
в дивел студио 3.0... 27.1.2019, 12:24 DarkMaster
Ну так добавляйте в правила выше:
27.1.2019, 13:28 FREEON
Ну так добавляйте в правила выше:
добавил
t... 27.1.2019, 13:43 FREEON
Пример нужен. Как символы отличать?
.- = А - 2 ... 27.1.2019, 14:31 cirus
Второй параметр, это шаблон регулярного выражения... 27.1.2019, 14:04 FREEON Есчо вопрос... Можно ли к примеру делать перекодир... 27.1.2019, 16:18 cirus [code]--lua
log "clear" log "mode com... 27.1.2019, 16:25 FREEON
[spoiler=Перевод текста в Азбуку Морзе в бинарном... 27.1.2019, 17:44 cirus
Пример приведите что не работает. 27.1.2019, 18:26 FREEON
Пример приведите что не работает.
ну в обратном ... 27.1.2019, 18:40 cirus
Причём тут точки и тире, они используются как про... 27.1.2019, 19:14 FREEON Набросал по шаблону скрипт для перевода текста рас... 27.1.2019, 20:10 cirus --lua
local s1 = '"Hello!"' -... 27.1.2019, 20:27 cirus t["<"]="Б"
t[... 27.1.2019, 21:02 DarkMaster
local s4 = [====['"Hello!"... 27.1.2019, 21:08 FREEON Помогите создать маску для url-декодера... :unsure... 28.1.2019, 1:16 cirus --lua
log "clear" log "mode compact... 28.1.2019, 4:24 FREEON
--lua
log "clear" log "mode compact... 28.1.2019, 6:38 FREEON А можно ли скриптом сделать зеркальный текст? Что ... 28.1.2019, 14:39 cirus
--lua
log "clear" log "mode compact... 28.1.2019, 15:27 FREEON Возник вопрос решил допилить генератор морзянки...... 28.1.2019, 16:09 cirus
Работает только с латиницей.
Используйте:
string_... 28.1.2019, 16:20 FREEON
Работает только с латиницей.
Используйте:
[code]s... 28.1.2019, 17:00 cirus --lua
log "clear" log "mode compact... 28.1.2019, 17:11 FREEON Ну да так и получается что многие серверы хитрят с... 28.1.2019, 20:51 cirus for v in pairs(t) do -- добавление ключе... 28.1.2019, 21:18 FREEON
for v in pairs(t) do -- добавление ключ... 28.1.2019, 21:29 cirus
Либо делать 2 таблицы. Одна для кириллицы, другая... 28.1.2019, 21:50 FREEON
Либо делать 2 таблицы. Одна для кириллицы, другая... 28.1.2019, 22:04 cirus
А пробел как при этом кодируется? Как отличать пр... 28.1.2019, 22:39 FREEON
А пробел как при этом кодируется? Как отличать пр... 28.1.2019, 23:01 cirus --lua
log "clear" log "mode compact... 29.1.2019, 0:50 FREEON
[code]--lua
log "clear" log "mode co... 29.1.2019, 1:18 cirus
Нет. А для чего нужен? 29.1.2019, 1:43 FREEON
Нет. А для чего нужен?
для разделения вместо кры... 29.1.2019, 1:46 cirus То строку разделяете на элементы, то массив выводи... 29.1.2019, 3:02 FREEON
То строку разделяете на элементы, то массив вывод... 29.1.2019, 11:47 FREEON
Lua такой гибкий язык и компактный, а такую прост... 29.1.2019, 12:27 sutra Понимаю одно, не вникая ничего не понимаю. Даже то... 29.1.2019, 4:02 DarkMaster
Лучше не использовать. Используйте next - он шуст... 29.1.2019, 13:10 cirus --lua
log "clear" log "mode compact... 29.1.2019, 13:27 FREEON Какая маска для декодера CP1251 в UTF-8
--lua
log... 23.4.2019, 22:34 FREEON Есть два файла текстового формата. Нужно сперва в... 29.10.2019, 16:14 Fors1k
Еще раз проверил, все работает.
File1
File2
Fi... 30.10.2019, 13:09 FREEON
Еще раз проверил, все работает.
File1
File2
Fi... 30.10.2019, 13:30 Fors1k
Взял идентичный скрипт
calc c:/2/file2_new.txt ... 30.10.2019, 13:35 FREEON
У меня в скрипте нет обращения к элементу массива... 30.10.2019, 13:48 Fors1k
сбрось свой скрипт из пилота.
Код прям с форума.
... 30.10.2019, 14:46 FREEON
Код прям с форума.
mg8zuB4na2c
даж не знаю в че... 30.10.2019, 15:41 FREEON
даж не знаю в чем дело... у тя работает у меня не... 30.10.2019, 18:15 Fors1k
Но с моими файлами работать по прежнему не хочет ... 31.10.2019, 8:04 FREEON
Ну ты пришли свои файлы для теста, что хорошо бы ... 31.10.2019, 9:33 Fors1k
[b]#i_1.txt меняем * на " и </tr> , ... 31.10.2019, 15:49 FREEON
Кидай в следующий раз сразу файлы для примера, та... 1.11.2019, 1:26 Fors1k
Есть два файла текстового формата. Нужно сперва ... 30.10.2019, 1:59 FREEON [/quote]
С командой indexOf еще не сталкивался. П... 30.10.2019, 11:27 cirus
--lua
local file= io.open([[C:... 30.10.2019, 12:46 cirus На луа скрипт работает? 31.10.2019, 1:26 FREEON
На луа скрипт работает?
Да работает на lua. Каже... 31.10.2019, 7:04 cirus --lua
local file = io.open([[C:... 31.10.2019, 11:37 FREEON Столкнулся с проблемой при работе скипта для транс... 18.11.2021, 14:36 cirus Путь с пробелами должен быть в кавычках.
--lua
log... 18.11.2021, 14:53
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|