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

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

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

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30

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

superkatya



Катька - смутьянка
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Поиск лекарств ведётся исключительно в разделе «Варезник».
TextPipe Pro
Текущая версия: 12.0 (06.06.2022)

Официальный сайт

 
Поддерживаемые ОС: Windows 10, 8, 7, Vista, 2019/2016/2012/2008/2003, x86 и x64
 
Скачать пробную версию в ZIP / в виде EXE-setup (27.5 МБ) / Список изменений
 
TextPipe Pro - утилита для пакетной обработки текстовой информации. Программа служит для форматирования и конвертирования текстовых файлов, замены в них текста, выполнения сложных преобразований, конвертирования текста из одного формата в другой.
Некоторые возможности TextPipe Pro:
• Пepepaбoтaнный пoиcк и зaмeнa в cooтвeтcтвии с заданной cxeмой. Причём можно задать как абсолютно идентичные cooтвeтcтвия, так и c нeчёткoй лoгикoй coпocтaвлeния (для иcпpaвлeния oбщeизвecтныx oшибoк нaбopa).
• Сортировка текста по алфавиту, рандомизация строк, подсчёт и удаление дублирующихся строк.
• Добавление и(или) извлечение определённых слов, строк или частей текста, как введённых вручную, так и содержащихся в любом другом текстовом файле.
• VBScript или JScript (или PerlScript, PythonScript, REXXscript и т.д.) фильтpы мoгyт быть oпиcaны c нacтpoйкoй для oбpaбoтки кaждoгo пoля.
• Пpeoбpaзoвaниe cимвoлoв кoнцa cтpoки мeждy фopмaтaми Unix, Mainframe, DOS и Macintosh.
• Преобразование текста в список слов.
• Иcпpaвлeниe зaглaвнocти бyкв (нaпpимep, sImon -> Simon), несколько видов смены регистра текста.
• Удaлeниe пpoбeлoв в нaчaлe, в кoнцe cтpoк, и yдaлeниe мнoжественных пробелов.
• Удaлeниe тэгoв HTML и XML или только их атрибутов.
• Дoбaвлeниe нyмepaции cтpoк, лeвoгo и пpaвoгo пoлeй, зaгoлoвкoв и cнocoк.
• Дoбaвлeниe или yдaлeниe cтoлбцoв тeкcтa, дoпoлнитeльныx cтpoк.
• Дoпoлнeниe или yceчeниe дaнныx пoлeй дo определённой шиpины.
• Извлeчeниe aдpecoв элeктpoннoй пoчты и URL и мнoгoе мнoгoe дpyгoe...


Полезные обучающие статьи по программе:
  • тут

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

  • Всего записей: 3232 | Зарегистр. 01-06-2001 | Отправлено: 12:58 23-06-2004 | Исправлено: vasevase, 04:43 06-04-2023
    harrykkk



    BANNED
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    adgeuk
    DirectoryLister сохраняет в .html

    Всего записей: 9020 | Зарегистр. 24-02-2013 | Отправлено: 15:50 11-01-2020
    evoroz



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

    Цитата:
    Может можно с помощью другой программы?

    Я это делаю с помощь досовской команды dir /s >files.txt
    где /s читать подкаталоги, files.txt файл, куда все будет записано.
    Обрабатываю в textpipe.
    Сам textpipe так просто это не сделает.
    Нужна другая программа: https://www.white-windows.ru/pyat-prostyh-sposobov-poluchit-spisok-fajlov-i-papok-v-windows-10/ и т.д.

    Всего записей: 3487 | Зарегистр. 30-03-2002 | Отправлено: 15:52 11-01-2020 | Исправлено: evoroz, 15:52 11-01-2020
    adgeuk



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Спасибо harrykkk,evoroz, делал так:
     
    dir /s /b :-d >files.txt   (включая подпапки, без лишней инфы, только имена файлов - без папок)
     
     
     
    Добавлено:
    Как убрать всё что слева от последней точки в строке такого типа:
     
    Путь\1. Intro.pdf
     
    То есть, чтобы осталось только pdf ?
     
    Не могу въехать!
    Максимум что получается, это найти саму строку по выражению:
     
    (.*\.)*(.*)
     
    .* - несколько любых символов
    \. - точка
     
    Но когда делаю замену на $2 (то есть то, что во вторых скобках), то получаю всю строку целиком.
     
    Тот же самый метод на PowerGREP, кстати, работает!

    Всего записей: 92 | Зарегистр. 24-05-2010 | Отправлено: 16:25 11-01-2020 | Исправлено: adgeuk, 20:41 11-01-2020
    Jonmey

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    adgeuk
    Цитата:
    Как убрать всё что слева от последней точки в строке такого типа:
    Путь\1. Intro.pdf
    То есть, чтобы осталось только pdf ?

    Например, так
    ^.*([^\.\n\r]+)$
    на
    $1

    Всего записей: 1319 | Зарегистр. 17-01-2011 | Отправлено: 00:12 12-01-2020
    evoroz



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

    Цитата:
    (.*\.)*(.*)
    -> (.*)\.(.*)

    Всего записей: 3487 | Зарегистр. 30-03-2002 | Отправлено: 06:46 12-01-2020
    Jonmey

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    evoroz
    Цитата:
    -> (.*)\.(.*)  
    Две ошибки:
    - нет дифференциации последней точки от не последней точки в строке (а вопрошающий привел пример с двумя точками в строке)
    - с настройками по умолчанию* регэксп будет захватывать символы перевода строк, а вместе с ними и новые строки, и как результат обработки многострочного текста выдаст кусок последней строки вместо набора кусков строк.
    __________
    *
    Цитата:
    When enabled (default) a dot metacharacter in the pattern matches all characters, including new lines. (цитата из справки к программе)


    Всего записей: 1319 | Зарегистр. 17-01-2011 | Отправлено: 08:10 12-01-2020 | Исправлено: Jonmey, 08:18 12-01-2020
    evoroz



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Jonmey
    В своем примере перевод строки не указал, т.к. adgeuk его тоже не указал.
    Пропустил, что первая точка есть.  
    Однако мой пример рабочий если изменить "жадность (greedy)" на Longest и снять галочку New Line.  

    Всего записей: 3487 | Зарегистр. 30-03-2002 | Отправлено: 10:25 12-01-2020
    nikisakis

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Привет, textpipe сможет нижнее подчеркивание в названии файла заменить на пробел?
    Было:
    TextPipe_Pro_утилита_для_пакетной_обработки_текстовой_информации.txt
    Стало:
    TextPipe Pro утилита для пакетной обработки текстовой информации.txt

    Всего записей: 16 | Зарегистр. 26-12-2019 | Отправлено: 08:54 18-01-2020 | Исправлено: nikisakis, 08:55 18-01-2020
    Jonmey

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    nikisakis
    Для этого к искомому правилу Find нужно добавить фильтр
    Restrict - to inside filename
    (подробности в справке программы)
     
    Проще переименования файлов осуществить в Total Commander (выделить нужные - Ctrl-M -  заполнить поля Search and Replace нужным) или даже в PowerGrep (Action Type - Rename Files and Folders)

    Всего записей: 1319 | Зарегистр. 17-01-2011 | Отправлено: 09:50 18-01-2020
    nikisakis

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

    Цитата:
    Jonmey

    Благодарю, попробую. Я как раз через тотал комендер делал, но у меня в одной панке сотни подпапок, думал есть решение попроще.

    Всего записей: 16 | Зарегистр. 26-12-2019 | Отправлено: 13:58 18-01-2020
    evoroz



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

    Цитата:
    у меня в одной панке сотни подпапок, думал есть решение попроще

    Я вместо Total использую Altap Salamander. В нем без проблем все переименовывается за раз. Кстати прога стала бесплатной.

    Всего записей: 3487 | Зарегистр. 30-03-2002 | Отправлено: 15:12 18-01-2020
    Jonmey

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

    Цитата:
    Благодарю, попробую. Я как раз через тотал комендер делал, но у меня в одной панке сотни подпапок, думал есть решение попроще.

    В Total Commander в активной панели, где ваша папка, в которой сотни подпапок сначала нажмите Ctrl-B (Branch View - Показать все файлы без подпапок) и увидите список всех-всех файлов, которые в ней и в подпапках, единым списком. Далее выделяйте и действуйте, как описано выше. Как результат - произведете замены в именах всех файлов (включая подпапки) за один проход.

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



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

    Цитата:
    miranon
    Получилось вот так: http://sendfile.su/1541943
    Вам надо будет переименовать фильтр (русские буквы заменились на подчеркивание),
    установить свою директорию, где находятся файлы для обработки и попробовать на копии файлов.
     
    Пояснение по работе фильтра. @inputFilename берет полное имя файла, т.е. слово1.txt.
    Я создал 2 файла: слово1 и слово2 (как написано, без расширения). Т.к. пора спать, а бороться не хотелось.  
     
    Содержание файла слово1
     
    Мой дядя самых честных правил,  
    Когда не в шутку занемог,  
    Он уважать себя слово1 заставил  
    И лучше выдумать не мог.  
    Его пример другим наука;  
    Но, боже мой, какая скука  
    С больным сидеть и день и ночь,  
    Не слово1 отходя ни шагу прочь!
     
    Содержание файла слово2 аналогично, только слово1 заменено на слово2.
    После прогона фильтра у меня в итоговых файлах получилось по две строки со словами 1 и 2 в каждом.
     
    Внимание: исходные файлы портятся: из них удаляются несовпадающие строки!

     
     
    evoroz, а можно как то оптимизировать шаблон что бы он не учитывал файловое расширение и регистр букв (т.е. что бы неважно было большая или маленькая буква в ключевом слове).
     
    Напомню в чём задача была:
     

    Цитата:
    Есть несколько тысяч файлов с разными именами.
     
    Пример:
    слово1.txt
    слово2.txt
    и т.д.
     
    В каждом из этих файлов есть несколько тысяч строк. Некоторые из этих строк содержат название файла.
    Пример содержания файла с названием слово1.txt:
     
    Мой дядя самых честных правил,
    Когда не в шутку занемог,
    Он уважать себя слово1 заставил
    И лучше выдумать не мог.
    Его пример другим наука;
    Но, боже мой, какая скука
    С больным сидеть и день и ночь,
    Не слово1 отходя ни шагу прочь!
     
    Мне нужно извлечь строки где встречаеться имя файла (или удалить строки без имени файла)
    Т.е. для вышестоящего примера остануться строки:
     
    Он уважать себя слово1 заставил
    Не слово1 отходя ни шагу прочь!

     
    Вот скрипт который использует шаблон:
     

    Цитата:
    'This example script keeps a line counter that  
    'does not reset for each file
     
    'Our line counter
     
    dim fn
     
    'Called for every line in the file
    'EOL contains the end of line characters (Unix, DOS or Mac) that must be
    'appended to each line
     
    function processLine(line, EOL)
     
    fn = TextPipe.inputFilename
     
    if InStr ( line, fn ) then
    processLine = line & EOL
    end if
     
    end function
     
     
    'Called at the start of a processing job -
    'perform one-time initialisation here
    sub startJob()
      a = 0
      fn = TextPipe.inputFilename
    end sub
     
     
    'Called at the end of a processing job -
    'destroy any declared objects here
    sub endJob()
      'do nothing
    end sub
     
     
    'Called before each file is opened -
    'perform per-file initialisation here
    function startFile()
      startFile = ""
      fn = TextPipe.inputFilename
    end function
     
     
    'Called before each file is closed -
    'flush all pending file output here
    function endFile()
      endFile = ""
      fn = TextPipe.inputFilename
    end function

     
    Заранее спасибо за помощь!

    Всего записей: 504 | Зарегистр. 03-06-2004 | Отправлено: 19:31 18-01-2020 | Исправлено: miranon, 19:32 18-01-2020
    Jonmey

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    miranon
    Как вам ранее намекнул Romul81, в PowerGrep ваша задача решается буквально нажатием нескольких клавиш:

    Ваша задача выбрать файлы для обработки (панель слева), задать настройки правой панели (их две - тип Action и ввести placeholder (синий текст) в поле Search), определиться, нужны ли вам бэкапы файлов (ниже настройки) и нажать кнопку Quick delete (вверху) (можете предварительно нажать Preview для оценки правильности удалений без изменения самих файлов). И все.

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



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Jonmey
     
    Спасибо за подсказку, решил задачу через PowerGrep. Только в моем случае нужно наоборот, извлечь строки с ключевыми словами, сделал по этой инструкции и всё получилось: https://www.powergrep.com/manual.html#xmplines
     
    В общем вопрос снят.

    Всего записей: 504 | Зарегистр. 03-06-2004 | Отправлено: 13:20 19-01-2020
    Jonmey

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

    Цитата:
    в моем случае нужно наоборот, извлечь строки с ключевыми словами

    Для этого достаточно поменять тип Action (2) на Collect Data и вместо указанного на скрине шаблона (синим) (4) нужно вставить строку
    ^[^\n\r]*%FILENAMENOEXT%[^\n\r]*$
    (и в поле Search и в поле Collect. И вся разница.
     
    P.S. Писать на форуме в стиле "я сделал неким образом и все получилось" - очень скверная привычка (которой страдают многие), поскольку форум - это не место отчета об успехах в соцсоревновании, личных достижениях и проч., а источник информации, которую будут читать люди и в дальнейшем, ища помощи в решении своих проблем. И им совершенно не интересно и бесполезно, у кого и что получилось, если не описан сам алгоритм решения задачи или проблемы, которая, когда это было нужно вопрошающему - очень подробно описывается, в отличие от решения. Это похоже на стиль, как если бы вопросы задавали в топике, а ответы получали через РМ - то есть, внешнему читателю не было бы известно, решена ли в принципе задача, а если решена, то кто помог, и стоит ли  вообще ждать помощи. Как очевидно, такому форуму была бы грош цена.
     
    Апелляции к  тому, что, де, "я дал ссылку на хелп" здесь не уместны, уже потому, что решение через PowerGrep вам фактически было дано полгода назад, но без разжевывания. И только когда я вам его пошагово разжевал вы им воспользовались, несмотря на то, что хелп к программе PowerGrep был также открыт и доступен.

    Всего записей: 1319 | Зарегистр. 17-01-2011 | Отправлено: 21:08 19-01-2020 | Исправлено: Jonmey, 01:06 20-01-2020
    miranon



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Jonmey
     
    Спасибо за подсказку. У меня через такие настройки получилось:
    https://b.radikal.ru/b20/2001/51/9edbe8f27572.png
     
    P.S. полгода назад я решил задачу через предложенный evoroz шаблон для TextPipe и необходимости ставить PowerGrep небыло.
     

    Всего записей: 504 | Зарегистр. 03-06-2004 | Отправлено: 12:30 20-01-2020 | Исправлено: miranon, 12:34 20-01-2020
    Jonmey

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

    Всего записей: 1319 | Зарегистр. 17-01-2011 | Отправлено: 00:33 21-01-2020 | Исправлено: Jonmey, 01:15 21-01-2020
    nikisakis

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

    Цитата:
    evoroz

    Цитата:
    Jonmey

    Спасибо ребята, за день сделал все что хотел.
    Мне textpipe при отмеченном чекбоксе "Binary files" - "Processes" жирным выделяет случайную строку в файлах, от этого можно как-то избавиться?  

    Всего записей: 16 | Зарегистр. 26-12-2019 | Отправлено: 19:05 22-01-2020
    evoroz



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

    Цитата:
    Мне textpipe при отмеченном чекбоксе "Binary files" - "Processes" жирным выделяет случайную строку в файлах, от этого можно как-то избавиться?

    Не может такого быть.
    Textpipe иногда некорректно определяет текстовый файл (считает, что он двоичный) и пропускает при обработке.
    Чтобы этого не было ставится чекбокс "Binary files" и обрабатывать.
    Случайная строка появляется из другого места.

    Всего записей: 3487 | Зарегистр. 30-03-2002 | Отправлено: 19:39 22-01-2020
    Открыть новую тему     Написать ответ в эту тему

    Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30

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


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

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

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru