[ Обновленные темы · Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: Andrey_A, simup, ХарВик, chip642  
getWords.vbs - Извлечение русских\английских слов\цифр
Andrey_AДата: Четверг, 05.04.2012, 16:29 | Сообщение № 1
Генералиссимус

На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7186
Награды: 143
Репутация: 125
Аверин Андрей
Извлечение русских\английских слов\цифр из выделенного текста
Используется скрипт Functions.vbs - Скрипт с различными Функциями, которые можно использовать в других скриптах

Доступно только для пользователей

Примеры использования:

Код
"Извлечь слова из выделенного текста"
          {
          -"Извлечь все русские слова" Call("Scripts::Main", 1, "getWords.vbs") Icon("%a\AkelPadImage.dll",551)
          -"Извлечь все русские слова -дубликаты" Call("Scripts::Main", 1, "getWords.vbs", `"0" "0" "1"`) Icon("%a\AkelPadImage.dll",551)
          -"Извлечь все русские слова -дубл.+нижн регистр." Call("Scripts::Main", 1, "getWords.vbs", `"0" "0" "1" "1"`) Icon("%a\AkelPadImage.dll",551)
          SEPARATOR
          -"Извлечение русских слов >2 символов" Call("Scripts::Main", 1, "getWords.vbs", `"0" "2"`) Icon("%a\AkelPadImage.dll",551)
          -"Извлечь русские слова >2 симв.-дубл." Call("Scripts::Main", 1, "getWords.vbs", `"0" "2" "1"`) Icon("%a\AkelPadImage.dll",551)
          -"Извлечь русские слова >2 симв.-дубл.+нижн регистр." Call("Scripts::Main", 1, "getWords.vbs", `"0" "2" "1" "1" "1"`) Icon("%a\AkelPadImage.dll",551)
          SEPARATOR
          SEPARATOR
            -"Извлечь все англ. слова" Call("Scripts::Main", 1, "getWords.vbs", "1") Icon("%a\AkelPadImage.dll",550)
          -"Извлечь все англ. слова -дубликаты" Call("Scripts::Main", 1, "getWords.vbs", `"1" "0" "1"`) Icon("%a\AkelPadImage.dll",550)
          -"Извлечь все англ. слова -дубл.+нижн регистр." Call("Scripts::Main", 1, "getWords.vbs", `"1" "0" "1" "1"`) Icon("%a\AkelPadImage.dll",550)
          SEPARATOR
          -"Извлечь англ. слова >2 символов" Call("Scripts::Main", 1, "getWords.vbs", `"1" "2"`) Icon("%a\AkelPadImage.dll",550)
          -"Извлечь англ. слова >2 симв.-дубл." Call("Scripts::Main", 1, "getWords.vbs", `"1" "2" "1"`) Icon("%a\AkelPadImage.dll",550)
          -"Извлечь англ. слова >2 симв.-дубл.+нижн регистр." Call("Scripts::Main", 1, "getWords.vbs", `"1" "2" "1" "1" "1"`) Icon("%a\AkelPadImage.dll",550)
          SEPARATOR
          SEPARATOR
          -"Извлечь все цифры" Call("Scripts::Main", 1, "getWords.vbs",`"2"`) Icon("%a\AkelPadImage.dll",917)
          -"Извлечь все цифры +сорт.-дубликаты" Call("Scripts::Main", 1, "getWords.vbs",`"2" "0" "1" "0" "1"`) Icon("%a\AkelPadImage.dll",917)
          }
[/hide]


 
asmadeusДата: Среда, 11.12.2013, 20:34 | Сообщение № 2
Генералиссимус

На сайте с: 14.12.2012
Город: Кривой Рог
Сообщений: 1375
Награды: 29
Репутация: 32
Магистр, скрипт очень бы пригодился, если бы:
-вытягивал русские фразы с кавычек (именно с кавычек, где то одинарных, где то двойных)
-если в этих кавычках были бы английские слова вперемешку с русскими, то брал бы и их
-одно и двух буквенные - тоже выбирал бы, а не выбрасывал
-и результат выводил бы в новый файл по фразам, а не по слову на строку
сами кавычки в выборке не нужны
 
Andrey_AДата: Среда, 11.12.2013, 21:43 | Сообщение № 3
Генералиссимус

На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7186
Награды: 143
Репутация: 125
Аверин Андрей
asmadeus, это можно решить в TCIMG

Добавив в секцию [FormatUser] в TCIMG.ini вставить

Код
; получить все фразы между кавычками (одинарными или двойными)
U10=["']+([^"'\r\n]*)["']+


кнопка для Total Commander:

Извлечь из содержимого файла под курсором все фразы между одинарными или двойными кавычками и сохранить в активной панели с приставкой _test

Доступно только для пользователей

Если произвести ещё действия, то можно ещё отсеять...

т.к. утилита интегрируется в AkelPad, то попробую это вставить, но не скоро


 
asmadeusДата: Среда, 11.12.2013, 21:46 | Сообщение № 4
Генералиссимус

На сайте с: 14.12.2012
Город: Кривой Рог
Сообщений: 1375
Награды: 29
Репутация: 32
Andrey_A, попробую этот способ пока
 
Andrey_AДата: Четверг, 12.12.2013, 06:13 | Сообщение № 5
Генералиссимус

На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7186
Награды: 143
Репутация: 125
Аверин Андрей
asmadeus, вариантов может быть масса. По тем файлам которые ты прислал сложность в том, что внутри фраз, заключённых в двойные кавычки могут присутствовать одинарные и наоборот... посмотри обобщённый вариант:

getLineBetweenQuotes.vbs - Извлечение фраз между двойными и одинарными кавычками из выделенного текста


 
Dimsok5405Дата: Среда, 29.03.2023, 09:16 | Сообщение № 6
Рядовой

На сайте с: 03.03.2023
Город: Санкт-Петербург
Сообщений: 3
Награды: 0
Репутация: 0
Возможно добавить в скрипт сортировку в случайном порядке?
 
Andrey_AДата: Среда, 29.03.2023, 09:36 | Сообщение № 7
Генералиссимус

На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7186
Награды: 143
Репутация: 125
Аверин Андрей
Dimsok5405, перемешать строки можно через
InsertPlus.vbs - Скрипт библиотека различных преобразований текста и вставка

Код
-"Перемешать выделенные строки случайным образом" Call("Scripts::Main", 1, "InsertPlus.vbs", `153 "vb"`) Icon("%a\AkelPadImage.dll",411)


.


 
goldengeДата: Четверг, 30.03.2023, 13:51 | Сообщение № 8
Сержант

На сайте с: 17.12.2017
Сообщений: 37
Награды: 0
Репутация: 0
Как создать например wifi пароль скриптом
1) 12345678 это от 1 до 8 - первый такой вариант
2) и так например
abcdef от a до f - это второй вариант
 
Andrey_AДата: Четверг, 30.03.2023, 15:20 | Сообщение № 9
Генералиссимус

На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7186
Награды: 143
Репутация: 125
Аверин Андрей
В сборке AkelPad Image есть утилита TCIMG - через неё можно

Код
-"Генератор паролей" Call("Scripts::Main", 1, "TCIMG.vbs", `pasgen`) Icon("%a\AkelPadImage.dll",1483)


Так же есть
Код
{
-"Генератор паролей" Call("Scripts::Main", 1, "TCIMG.vbs", `pasgen`) Icon("%a\AkelPadImage.dll",1483)
SEPARATOR
-"Случайный пароль" Call("Scripts::Main", 1, "ClipboardPlus.vbs", `24 3 20`) Icon("%a\AkelPadImage.dll",352)
SEPARATOR
-"В буфер случайные символы (длина в диалоге) LAT" Call("Scripts::Main", 1, "ClipboardPlus.vbs", `24 0 -1`) Icon("%a\AkelPadImage.dll",1419)
-"В буфер случайные символы (длина в диалоге) NUM" Call("Scripts::Main", 1, "ClipboardPlus.vbs", `24 1 -1`) Icon("%a\AkelPadImage.dll",1421)
-"В буфер случайные символы (длина в диалоге) RUS" Call("Scripts::Main", 1, "ClipboardPlus.vbs", `24 2 -1`) Icon("%a\AkelPadImage.dll",1420)
-"В буфер случайные символы (длина в диалоге) LAT NUM" Call("Scripts::Main", 1, "ClipboardPlus.vbs", `24 3 -1`) Icon("%a\AkelPadImage.dll",1422)
-"В буфер случайные символы (длина в диалоге) 32-161DEC" Call("Scripts::Main", 1, "ClipboardPlus.vbs", `24 4 -1`) Icon("%a\AkelPadImage.dll",1423)
-"В буфер случайные символы (длина в диалоге) 32-191DEC" Call("Scripts::Main", 1, "ClipboardPlus.vbs", `24 5 -1`) Icon("%a\AkelPadImage.dll",1424)
}


Если надо только скриптом, то под ваши символы надо писать новую функцию... пока времени нет


 
Dimsok5405Дата: Понедельник, 03.04.2023, 08:46 | Сообщение № 10
Рядовой

На сайте с: 03.03.2023
Город: Санкт-Петербург
Сообщений: 3
Награды: 0
Репутация: 0
Как можно разделить текст на слова и перемешать их за один подход в комстроке? К примеру, такое не действует:
"c:\Program Files\Total Commander\Plugins\exe\AkelPad.exe" /Command(4157) /Command(4155) /Command(4157) /Call("Scripts::Main", 1, "getwords.vbs", `"0" "0" "1" "1"`) /Call("Scripts::Main", 1, "InsertPlus.vbs", `153 "vb"`).

Кстати, последняя строка остаётся не отсортированной. Это было в 1.5 версии. Попробовал последнюю (1.8) - та же проблема.
И ещё я заметил, что InsertPlus.vbs сохраняет текстовый файл без запроса. Это нормально?
 
Andrey_AДата: Понедельник, 03.04.2023, 20:01 | Сообщение № 11
Генералиссимус

На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7186
Награды: 143
Репутация: 125
Аверин Андрей
Цитата Dimsok5405 ()
Кстати, последняя строка остаётся не отсортированной

Основные функции находятся в Functions.vbs - обновите http://tc-image.3dn.ru/forum/9-346-1#1076

Цитата Dimsok5405 ()
InsertPlus.vbs сохраняет текстовый файл без запроса. Это нормально?

Для меня это более чем нормально. Т.к. все мои скрипты из сборки AkelPad Image, то в ней есть настройки, которые отключают автосохранение. Если вы без сборки используете, то в Functions.vbs замените SaveOrNoDocuments = 1 на 0.

Цитата Dimsok5405 ()
Как можно разделить текст на слова и перемешать их за один подход в комстроке?

Если честно уже не помню)) в AkelPad есть 3 обрамляющих символа, одинарная кавычка, обычные кавычки, и открывающая одиночная кавычка ( гравис, знак ударения) используйте их... + минимизируйте ненужные пробелы + прочитайте про Scripts::Main - варианты запуска...
Код
/Call(`Scripts::Main`,1,`getwords.vbs`,`'0' '0' '1' '1'`)


Можно и без AkelPad воспользоваться TCIMG

Код
TOTALCMD#BAR#DATA
%COMMANDER_PATH%\TCIMG.exe
sends=-1??0||?Fwords1,1||?P
%COMMANDER_PATH%\Wcmicons.dll,1
Из буфера обмена получить русские слова более 3-х символов, удалить дубликаты, перемешать случайным образом и записать в буфера обмена

0
-1

.


 
Dimsok5405Дата: Вторник, 16.05.2023, 11:10 | Сообщение № 12
Рядовой

На сайте с: 03.03.2023
Город: Санкт-Петербург
Сообщений: 3
Награды: 0
Репутация: 0
А с помощью InsertPlus возможно перемешать в случайном порядке знаки или слова в пределах одной строки?
 
Andrey_AДата: Среда, 17.05.2023, 09:35 | Сообщение № 13
Генералиссимус

На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7186
Награды: 143
Репутация: 125
Аверин Андрей
Dimsok5405, обновите скрипт - http://tc-image.3dn.ru/forum/9-384-1159-16-1333716091

Код

-"Перемешать символы в выделенном" Call("Scripts::Main", 1, "InsertPlus.vbs", `1531`) Icon("%a\AkelPadImage.dll",1706)
SEPARATOR
-"Перемешать в выделенной строке фрагменты - разделитель ','" Call("Scripts::Main", 1, "InsertPlus.vbs", `153 ","`) Icon("%a\AkelPadImage.dll",1652)
-"Перемешать в выделенной строке фрагменты - разделитель '# '" Call("Scripts::Main", 1, "InsertPlus.vbs", `153 "# "`) Icon("%a\AkelPadImage.dll",1652)
-"Перемешать в выделенной строке фрагменты между пробелами" Call("Scripts::Main", 1, "InsertPlus.vbs", `153 " "`) Icon("%a\AkelPadImage.dll",1652)
SEPARATOR
-"Перемешать выделенные строки случайным образом" Call("Scripts::Main", 1, "InsertPlus.vbs", `153 "vb"`) Icon("%a\AkelPadImage.dll",411)


 
  • Страница 1 из 1
  • 1
Поиск:

Интеллектуальные права и отказ от ответственности