Добавил еще ведущие нули к миллисекундам, если кому-то еще когда-то этот код понадобится
log = function (text, color, define){ var id, time, thread, logHtml, textLog; define = (typeof define == 'string') ? define.split(/[\s,.|:;]+/g) : define; if(typeof define === 'object' && define !== null){ if(Array.isArray(define)){ id = define.indexOf('id') > -1; time = define.indexOf('time') > -1; thread = define.indexOf('thread') > -1; } else{ id = define.id == true; time = define.time == true; thread = define.thread == true; } } else id = time = thread = true; id = id ? '<a href="action://action' + ScriptWorker.GetCurrentAction() + '" style="color:gray;">[' + ScriptWorker.GetCurrentAction() + ']</a>' : ''; time = time ? ' ' + getTime() : ''; thread = thread ? ' Поток №' + thread_number() : ''; logHtml = (id || time || thread) ? id + '<span style="color: white">' + time + thread + ' : </span>' : ''; logHtml += '<span style="color:' + (color ? color : 'white') + '">' + text + '</span>'; textLog = '[' + ScriptWorker.GetCurrentAction() + ']' + time + thread + ' : ' + text function getTime(){ var checkTime = function(i){ return (i < 10) ? "0" + i : i; }; var checkMilliSeconds = function(ms){ if (ms < 10) { return "00" + ms; } else if (ms < 100) { return "0" + ms; } else { return ms; } }; var d = new Date(); var hh = checkTime(d.getHours()); var mm = checkTime(d.getMinutes()); var ss = checkTime(d.getSeconds()); var ms = checkMilliSeconds(d.getMilliseconds()); return '[' + hh + ':' + mm + ':' + ss + '.' + ms + ']'; }; Logger.WriteHtml(logHtml, textLog); }Как сравнить слова в base64 (решено)
-
Объясните тугодуму....
Есть слово, к примеру ликвидация, его надо сравнить со словом ликвидировать.
ликвидация в base64
0LvQuNC60LLQuNC00LDRhtC40Y8=ликвидировать base64
0LvQuNC60LLQuNC00LjRgNC+0LLQsNGC0Yw=Как в BAS выполнить данное сравнение.
Как я понимаю, надо разбить
0LvQuNC60LLQuNC00LDRhtC40Y8=На фрагменты и уже их сравнивать
0LvQ uNC60 LLQu NC00 LDRh tC40 Y8=Может кто то растолковать, мне мозга не хватает.
-
@Dodok
@Dodok said in Как сравнить слова в base64:
Как в BAS перевести слова в base64, и выполнить данное сравнение.
А зачем переводить? base64_encode("ликвидировать") так но вы это и сами знаете. Зачем вам энкодить в base64? Можно же сравнить и нормальные слова? Если вам именно base64 может разбить на отдельные буквы и сравнивать их? Но я не уверен что энкод буквы будет содержаться в энкоде слова, надо смотреть.
-
@lotra said in Как сравнить слова в base64:
А зачем переводить? base64_encode("ликвидировать") так но вы это и сами знаете. Зачем вам энкодить в base64? Можно же сравнить и нормальные слова? Если вам именно base64 может разбить на отдельные буквы и сравнивать их? Но я не уверен что энкод буквы будет содержаться в энкоде слова, надо смотреть.
Нормальные слова увы не выйдет.
Смотрите есть текст.
Хочу зеленых и желтых мандаринок.
Сравниваем с
Хотел бы купить зелененьких и желтеньких мандарин.
Предложения схожи, а вот сравнить их стандартными методами BAS не выйдет так как зеленых и зелененьких не совпадут как не крути.
-
@Dodok ууу вам нейронку надо реализовать полноценное сравнение можно, но по затратам выйдет как полноценная нейросеть, только руками. Очень много if-ов, лес... Это если входящее неизвестно но вот примерно такое, найти связь в контексте и потом еще сравнить
как вариант если количество ограниченно и не лень составить список всех слов что могут попадаться и выдернуть из них корень суффикс и так далее и сравнить уже сначала корень потом подставляя суффиксы окончания и предлоги смотреть) -
@lotra said in Как сравнить слова в base64:
еализовать полноценное сравнение можно, но по затратам выйдет как полноценная нейросеть, только руками. Очень много if-ов, лес... Это если входящее неизвестно но вот примерно такое, найти связь в контексте и потом еще сравнить
Вариант можно вот такой придумать..

Сравнивать после этого перебором через список.
Но ладно 1-2 слова, а если это будет предложение из 40 слов. И таких предложений в сравнениях будет 200-300. Нагрузка будет аховой...
-
@Dodok изучайте:
https://github.com/hiddentao/fast-levenshtein
http://naturalnode.github.io/natural/stemmers.html
http://naturalnode.github.io/natural/string_distance.htmlИ еще:
https://www.npmjs.com/package/difflibВ частности
SequenceMatcher-ratio,quickRatio,realQuickRatio. -
@doc said in Как сравнить слова в base64:
а что вообще должно дать это сравнение? Какой результат?
А разве не ясно зачем получать данные о том что схожи слова либо нет ?
-
Нашел для себя выход
В принципе добился того чего хочу, и без нейронки, щас буду смотреть с увеличением нагрузки
