Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » JGsoft PowerGREP

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4

Открыть новую тему     Написать ответ в эту тему

Foss

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
По вопросам "лечения" обращайтесь в топик раздела «Варезник».

JGsoft PowerGREP
Текущая версия: 5.3.2 (08.07.2022)
Производитель: Just Great Software Co. Ltd., Jan Goyvaerts
Официальный сайт | История версий

PowerGREP - мощная программа для быстрого поиска и замены тектовых или бинарных данных в указанных файлах или папках. Умеет подсвечивать синтаксис в зависимости от формата тектового файла (HTML и т.д.), поддерживает работу с многострочными кусками текста, а также регулярные выражения. В справке программы (на английском) есть подробные примеры по созданию работающих регулярных выражений: для поиска email адресов, различного HTML редактирования, анализа логов и т.д
 
Программа распространяется в виде Demo и Retail версий.
Retail версии - это купленные версии, не требующие регистрации.
 
Имеется официальная возможность установить/создать портабельный вариант (только для ретейл-версии) подробнее...

Программы аналогичного назначения:
  • TextPipe

  • Всего записей: 1316 | Зарегистр. 15-04-2003 | Отправлено: 01:01 03-01-2015 | Исправлено: Komandor, 15:27 20-07-2022
    Romul81



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    qw12
    На приведённом вами скриншоте указана секция, в которую вы вносите регулярные выражения (несколько) в рамках одного Action. Т.е. к примеру из строки ABCD мне нужно собрать данные по списку регулярок A, B, C ...
     
    Для нескольких Actions, как вам верно подсказал Jonmey, используйте Sequence, указывая для каждого шага результат обработки предыдущего Action.
     
    Ну а на счёт параллелизма, в этом, как правило, нет необходимости. Программа очень хорошо потребляет ресурсы, нагружая как процессор, так и память. Если вам нужно выполнить batch с независящими друг от друга входящими файлами и типами обработки, вы по-прежнему можете настроить Sequence с абсолютно независимыми друг от друга шагами (Action). Но выполняется Sequence всегда последовательно.

    Всего записей: 1327 | Зарегистр. 03-03-2008 | Отправлено: 10:31 18-06-2018
    Jonmey

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    qw12

    Цитата:
    Дело в том, что там вот такой раздел, где вероятно, я могу сделать задуманное, разве нет?

    Вы внимательно читали, что я вам написал? Видимо, нет. Повторю:

    Цитата:
    Чтобы организовать все четыре шага (Actions) в единую инструкцию имеется опция Sequence (одноименная закладка), которая позволяет объединять разнородные операции Actions в виде последовательных шагов (1->2->3->4).

     

    Всего записей: 1319 | Зарегистр. 17-01-2011 | Отправлено: 10:43 18-06-2018 | Исправлено: Jonmey, 10:55 18-06-2018
    IvanStepanov

    BANNED
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Кому-нибудь удалось реализовать такую фичу: при клике на найденном фрагменте в списке найденного автоматом открывается файл в редакторе и ты автоматом позиционируешься в то место, где этот фрагмент находится и уже подсвечен?
    И ты можешь вручную его отредактировать

    Всего записей: 136 | Зарегистр. 11-05-2019 | Отправлено: 10:58 13-05-2019
    IvanStepanov

    BANNED
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Сам себе отвечу. Power Greep это сам умеет.Без посторонних инструментов.
    Позиционироваться в нужное место, где находится найденный фрагмент, при клике по нему в списке найденного.
    Единственно что он не подсвечивается в исходнике

    Всего записей: 136 | Зарегистр. 11-05-2019 | Отправлено: 08:50 17-08-2019
    DocSmith

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Доброго дня, может кто подскажет:
     
    Есть текстовый файл-соответствие:
     
     
    3334 3243243-4607070199777
    6644 2335455-4607070199888
    ...
     
    Требуется в пачке файлов XML:
     
    Если в файле в определенной строке встречается число из левой части файла-соответствия, например 3334, то в другом месте (в определенной строке) этого же файла заменить  
    <originOrder number="9999-4607070199777" /> на <originOrder number="3243243-4607070199777" />
     
    Количество записей в файле-соответствии соответствует количеству файлов XML.

    Всего записей: 35 | Зарегистр. 02-07-2005 | Отправлено: 16:44 01-11-2019 | Исправлено: DocSmith, 16:56 01-11-2019
    Jonmey

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    DocSmith
    Конвертируйте ваш файл соответствий в .pga (создайте пример с требуемым единичным функционалом, чтобы посмотреть синтаксис и по аналогии преобразуйте к нему файл соответствий) и применяйте этот .pga к своей пачке xml.
    Суть ваших замен сводится, как понимаю, к поиску по набору однотипных шаблонов
    (XXXX)(regexp{...})(YYYY-...)
    заменить на
    \1\2ZZZZ-...

    Всего записей: 1319 | Зарегистр. 17-01-2011 | Отправлено: 19:13 02-11-2019 | Исправлено: Jonmey, 19:20 02-11-2019
    Tumanbl4

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Хорошая мощная программа, но у нее очень, мягко выражаясь, странный подход к настройке выходных данных, если дело касается вывода в файл архива - настройка выходного формата жестко завязана на настройку входного анализа файлов архивов.
    Для ясности мой случай - ищу битые файлы и хочу их не просто удалить, а заархивировать (вдруг потом окажется, что удалил лишнее).
     
    = Настройки входных данных (File Selector):
    - File formats to convert to plain text -> (unused)
    - Archive formats to search inside -> (unused)
    - Text encodings... -> All files as binary
    * файлы битые, я ищу бинарные паттерны, а пытаться в таких файлах анализировать текст или содержимое архивов бессмысленно
     
    = Настройки обработки (Action):
    - Action type = List files
    - What to list = Full path to files
    ...
    - Target file creation = Move matched files
    - Target file destination type = Compressed archive
    - Target file location = xxx.zip
    - Backup ... = No backups
     
    При попытке выполнения программа прямым текстом заявляет, что вывод в архив надо настроить в блоке File Selector, в пункте Archive formats to search inside (к слову - вывод в другой формат - не архив, отрабатывается нормально).
     
    Ок, иду туда, меняю:
    - Archive formats to search inside = (unused) -> None
     
    Бинго, обработка выполняется, но упс - проигнорировав на входе все файлы архивов, т.е. тупо пропустив их при обработке...
     
    Снова иду туда, меняю:
    - Archive formats to search inside = None -> ZIP only
     
    В итоге все архивы, кроме ZIP, опять пропускаются, а найденные ZIP пролетают с ошибкой распаковки (найдены-то битые), в общем результат по факту тот же...
     
    * еще, кстати, минус - не смотря на настройку What to list = Full path to files, в генерируемом архиве пути получаются относительные (к папке поиска), хотя для относительных путей есть отдельное значение параметра (при выводе в "список" этой проблемы к счастью нет - там пути выдаются как настроено)
     
    Может кто-то знает как настроить вывод в архивный файл, не включая распаковку архивов на входе?
    * мне таки удалось добиться своего, обманув программу, но это очень жирный костыль, а хочется светлого и чистого (решения) - если не найдется нормального способа, позже напишу свой костыль, вдруг кому пригодится
     

    Всего записей: 22 | Зарегистр. 07-10-2008 | Отправлено: 02:23 26-11-2019
    Jonmey

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Tumanbl4
    Цитата:
    Бинго, обработка выполняется, но упс - проигнорировав на входе все файлы архивов, т.е. тупо пропустив их при обработке...  
    Hide files and folder -> (unused)
    не помогает?

    Цитата:
    еще, кстати, минус - не смотря на настройку What to list = Full path to files, в генерируемом архиве пути получаются относительные (к папке поиска)
    А вы какие хотели? (конкретный пример приведите: текущий результат и результат, который вы хотели бы получить)
    ***
    Хотя на мой взгляд проще с пом. PG создать для батника список с полными путями файлов  (архивами, как я понимаю), которые нужно заархивировать с удалением (таких батников на все вкусы - только списки подавай) или с помощью PG (на худой конец) составить такой батник (поиском) с пофайловым перемещением архивов в архив.
    Весть вопрос в одном доп. клике на батнике. Тем паче задачка - одноразовая (если битые архивы не имеют свойства к саморазмножению).

    Всего записей: 1319 | Зарегистр. 17-01-2011 | Отправлено: 03:25 26-11-2019 | Исправлено: Jonmey, 05:10 26-11-2019
    Tumanbl4

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    Hide files and folder -> (unused)
    не помогает?

    Нет - это значение стоит по-умолчанию и я его не менял
     

    Цитата:
    А вы какие хотели? (конкретный пример приведите: текущий результат и результат, который вы хотели бы получить)

    При выводе в архив даже при настройке What to list = Full paths to files мы получаем в архиве относительную структуру каталогов/файлов с "отсчетом" от папки поиска, т.е. результат, на самом деле соответствующий настройке What to list = Relative paths to files, а хотелось бы увидеть в архиве полную структуру - от буквы диска, либо от корневого каталога (архиваторы сами по себе такое умеют).
     

    Цитата:
    Хотя на мой взгляд проще с пом. PG создать для батника список с полными путями файлов  (архивами, как я понимаю), которые нужно заархивировать с удалением (таких батников на все вкусы - только списки подавай) или с помощью PG (на худой конец) составить такой батник (поиском) с пофайловым перемещением архивов в архив.
    Весть вопрос в одном доп. клике на батнике. Тем паче задачка - одноразовая (если битые архивы не имеют свойства к саморазмножению).

    Изначально я и планировал сделать вывод в текстовый список и дальше с ним работать вручную (вне PG), но в процессе увидел, что PG предоставляет еще множество возможностей и решил ими воспользоваться, и из интереса, и из перспективы разобраться с ними, чтобы в будущем пользоваться и для других задач.
     
    Нашел еще не работающую (у меня) функцию - в добавление к переносу в архив решил для перестраховки оставить на исходных местах бэкапы распознанных файлов (чтобы вручную их потом найти по расширению и удалить, если обработка пройдет корректно). Для этого в настройках вывода выставил:
    - Backup file naming style = Single *.bak
    - Backup file destination type = Same folder as original
    - Backup file location = /настройка не активна/
     
    На выходе - как будто я бэкап не и настраивал. Т.е. обработка (поиск + архивация) выполняется, а файлы *.bak на месте исходных не появляются...

    Всего записей: 22 | Зарегистр. 07-10-2008 | Отправлено: 15:31 26-11-2019 | Исправлено: Tumanbl4, 15:35 26-11-2019
    Jonmey

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Tumanbl4

    Цитата:
    При выводе в архив даже при настройке What to list = Full paths to files мы получаем в архиве относительную структуру каталогов/файлов с "отсчетом" от папки поиска, т.е. результат, на самом деле соответствующий настройке What to list = Relative paths to files, а хотелось бы увидеть в архиве полную структуру - от буквы диска, либо от корневого каталога (архиваторы сами по себе такое умеют).  

    Наверное потому, что архивирование - не прямая задача пакетного редактора, а лишь опциональная, тогда как весь спектр возможностей рассчитан, прежде всего, на прямые задачи, а разбираться с возможностями архиваторов - явно не из таких, тем более, это осуществляется, при желании, одним кликом за пределами данной программы. То есть, опция архивирования - по существу перебор с возможностями программы, введенный "до кучи" (например, при работе с большими массивами мелких текстовых файлов типа html страниц) (с тем же успехом можно было ввести конверторы, кодеки и всякую проч. фигню, отношения к редактору по существу не имеющую).
    В общем проблема явно надуманная (архивировать с особыми параметрами архивы), поскольку вашу задачу (поиск битых архивов, перенос, их архивирование и т.д.) можно решить простейшим батником в рамках, например, архиватора WinRAR.

    Всего записей: 1319 | Зарегистр. 17-01-2011 | Отправлено: 20:13 26-11-2019 | Исправлено: Jonmey, 20:23 26-11-2019
    Tumanbl4

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Я не раздувал из этого проблему, а лишь обратил внимание на неработающие _дополнительные_ функции.
    Программа прекрасно выполнила свою основную функцию, а в довесок я был рад найти доп. функции, облегчающие дальнейшую работу, и далее был опечален тем, что они не работают.
    Если уж функции добавлены в программу, можно ожидать от них работоспособности. А тут получается как с китайским автомобилем - ездит хорошо, но в автомагнитоле поворот колесика громкости заодно переключает трэки, а в качестве экрана навигатора стоит картинка-муляж под стеклом. Не проблема - послушаю музыку и посмотрю карту на телефоне, но наличие такой "магнитолы" и "навигатора" вызывает недоумение (особенно на фоне хорошего качества основного средства (передвижения).
    Собственно, эти проблемные функции я здесь описал не ради попинать прогу или поспорить с кем-то, а в расчете, что я не разобрался в настройках и мне подскажут, как их сделать правильно (см. последний абзац моего первого сообщения), и поэтому так детально расписывал свои настройки. Ну если они действительно не работают, а не я криворукий, будем решать эту задачу как изначально планировалось - батником.

    Всего записей: 22 | Зарегистр. 07-10-2008 | Отправлено: 00:13 28-11-2019
    Jonmey

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Tumanbl4
    Напишите автору программы, если для вас это так важно и вы опечалены.
    Не вижу препятствий для этого.

    Всего записей: 1319 | Зарегистр. 17-01-2011 | Отправлено: 01:12 28-11-2019
    D1D1D1D

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Имеется ли в PG возможность получения закрывающих тегов для указанных тегов? То есть, захват по принципу подсветки тегов, несмотря на то, что внутри могут быть такие же закрывающие теги?

    Всего записей: 1367 | Зарегистр. 05-04-2010 | Отправлено: 09:14 05-01-2020
    Boris Smirnov

    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Данная утилита может конвертировать из одной кодировки в другую - скажем из OEM866 в UTF-16? Не нашел такой опции.

    Всего записей: 495 | Зарегистр. 04-11-2001 | Отправлено: 13:23 19-03-2020
    Jonmey

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Boris Smirnov

    Цитата:
    Данная утилита может конвертировать из одной кодировки в другую - скажем из OEM866 в UTF-16? Не нашел такой опции.

    Разумеется. Достаточно выбрать кодировку входящих файлов и кодировку выходных файлов для корректного типа действий. Подробности описаны в справке к программе.
    Более того подобное действо может быть осуществлено в пакетном режиме, в составе многошаговых и разнородных операций с файлами, причем не только из интерфейса программы, но и из командной строки.

    Всего записей: 1319 | Зарегистр. 17-01-2011 | Отправлено: 11:21 20-03-2020
    miranon



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Подскажите, а есть ли возможность в PowerGREP вывести статистиску по количеству (наиболее) употребляемых слов в тексте?
    Вот так:
    слово1 - 10
    слово2 - 7
    слово3 - 3
    и т.д.

    Всего записей: 504 | Зарегистр. 03-06-2004 | Отправлено: 22:38 18-04-2020 | Исправлено: miranon, 22:52 18-04-2020
    Jonmey

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    miranon
    Регэкспы не выполняют арифметические действия.
    Ваша задача решается с пом. батников. Или специализированных программ, если нужно быстрее.

    Всего записей: 1319 | Зарегистр. 17-01-2011 | Отправлено: 08:08 19-04-2020
    logmaster



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Впервые попробовал PowerGrep на большом количестве (несколько тысяч) fb2 (в сущности XML) файлов на кириллическом образце текста. Текст для поиска, естественно, набирал в окне Action.
    Все файлы в UTF-8. Многое нашлось правильно, но несколько файлов, в которых я явно вижу искомый текст, в результаты на попало. Сравнил кодировку удачных и неудачных и увидел, что все файлы с UTF8 with signature нашлись, а у всех не попавших кодировка UTF8 without signature.
    Перекодировал неудачников в UTF8 with signature и PowerGrep их тут же нашел.
    Получается, что птичка на Detect UTF-8... without BOM в Text Encoding Configuration не работает, а в Encoding установках нет выбора "UTF-8 without BOM".
    Значит, ничего нельзя сделать, разве что перекодировать файлы?
     
    Нашел причину проблемы:
    PowerGrep не зает, что такое fb2.
    Поэтому нужно было в File Selector/ Conversion and Extraction
    File formats to convert to plain text  
    оставить, например, None - и оба вида UTF-8 тогда бы находились.
    Я же создал новый File Format Configuration со своей маской *.fb2.
    Оказывается, что при этом нужно было отказаться от какого-либо конвертирования
    поставив галку только в пункте Search through the file's raw (unconverted) contents (read & write).
    PowerGrep же при создании новой конфигурации по умолчанию еще ставит галку  в Use IFilter, что и не давало найти UTF-8 without BOM.  
     

    Всего записей: 647 | Зарегистр. 22-04-2002 | Отправлено: 01:50 17-10-2020 | Исправлено: logmaster, 06:22 17-10-2020
    c0c0n

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Перезалейте пожалуйста
    "книги по регулярным выражениям" из шапки темы.

    Всего записей: 250 | Зарегистр. 19-01-2006 | Отправлено: 21:34 21-10-2020
    krylov07

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Подскажите, пжлт, как решить такую задачу:
     
    Есть много текстовых файлов.
    Найти строки, содержащие определенный набор символов (напр., слово "black", без кавычек).
    Надо в один тестовый файл вывести все строки с "black" и в каждой строке дописать имя файла (чтобы понять, откуда строка).
     
    Если можно, поясните для чайника

    Всего записей: 141 | Зарегистр. 07-05-2007 | Отправлено: 12:30 22-04-2021
    Открыть новую тему     Написать ответ в эту тему

    Страницы: 1 2 3 4

    Компьютерный форум Ru.Board » Компьютеры » Программы » JGsoft PowerGREP


    Реклама на форуме Ru.Board.

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.B0ard
    © Ru.B0ard 2000-2024

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru