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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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
    miranon



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Подскажите пожалуйста, как в TextPipe извлечь строки с файла которые содержат имя файла?
     
    Пример:
    Название файла: keyword.txt
     
    В файле такие строки:
    какой то рандомный текст keyword
    еще какой то текст
    еще строка
    какая то keyword еще строка
     
    Нужно извлечь строки с словом keyword. Или удалить все строки которые не содержат слово keyword.
     
    Заранее спасибо за помощь.
     
     

    Всего записей: 504 | Зарегистр. 03-06-2004 | Отправлено: 23:23 08-08-2018
    evoroz



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    miranon
    Вся группа фильтров Extract.
    Статья http://digitblog.ru/index.php/textpipe/22-8-textpipe-группа-фильтров-extract-извлечь
     
    Например, берете фильтр Extract lines matching/nonmatching
    Выбираете фильтр совпадающие / несовпадающие.
    В нем пишите keyword и получаете соответственно выбору результат.
     

    Всего записей: 3487 | Зарегистр. 30-03-2002 | Отправлено: 11:10 09-08-2018
    miranon



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    evoroz
     
    Дело в том что речь идет о тысячах файлов, т.е. вручную вписывать keyword не вариант.
    Сидел вчера несколько часов, пробовал разные варианты, изучал документацию но в итоге ничего не получилось. Максимум что удалось, это добавить название файла keyword.txt в первую строку или в начало каждой строки.
     
    Использовал макрос @inputFilename@ (https://www.datamystic.com/textpipe/manual/add_filters_macros.htm), но он у меня так и не заработал на Search/Replace filters как указано в документации (на Extract фильтрах не работает). Пробовал на версиях v9.7.3 и 10.7.2. Если бы работал, то можно было бы как то пометить строки где встречаеться keyword и потом уже извлечь нормальным способом. :/

    Всего записей: 504 | Зарегистр. 03-06-2004 | Отправлено: 20:20 09-08-2018
    evoroz



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    miranon
    Вы меня извините, но я просто не понимаю, что вы хотите.
    Можно пример. В виде:
     
    Есть файл с именем 0123.txt Его содержание:
     
    какой то рандомный текст keyword  
    еще какой то текст  
    еще строка  
    какая то keyword еще строка
     
    Как определяется keyword? Можно для написать регулярку и нужно ли это делать?
    Что вообще нужно сделать в результате?
    Например, переименовать 0123.txt в keyword.txt.
     
    И тому подобное.
     
     

    Всего записей: 3487 | Зарегистр. 30-03-2002 | Отправлено: 22:11 09-08-2018
    miranon



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    evoroz
     
    Попробую подробнее обьяснить.
    Есть несколько тысяч файлов с разными именами.
     
    Пример:
    слово1.txt
    слово2.txt
    и т.д.
     
    В каждом из этих файлов есть несколько тысяч строк. Некоторые из этих строк содержат название файла.
    Пример содержания файла с названием слово1.txt:
     
    Мой дядя самых честных правил,
    Когда не в шутку занемог,
    Он уважать себя слово1 заставил
    И лучше выдумать не мог.
    Его пример другим наука;
    Но, боже мой, какая скука
    С больным сидеть и день и ночь,
    Не слово1 отходя ни шагу прочь!
     
    Мне нужно извлечь строки где встречаеться имя файла (или удалить строки без имени файла)
    Т.е. для вышестоящего примера остануться строки:
     
    Он уважать себя слово1 заставил
    Не слово1 отходя ни шагу прочь!
     
    Я пробовал макрос @inputFilename@ (который заменяеться на имя файла), но он к сожалению не работает с фильтрами Extract или Search/Replace. Он работает только с фильтрами Add text at start of file и Add text at start of lines, т.е. я могу добавить для вышестоящего примера слово1 в начало файла (например в 1ю строку) или в начало каждой строки. Но то что мне нужно, реализовать пока не получилось.

    Всего записей: 504 | Зарегистр. 03-06-2004 | Отправлено: 23:01 09-08-2018 | Исправлено: miranon, 23:02 09-08-2018
    Romul81



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    miranon
    Это лучше делать в PowerGREP.
    Там уже обсуждались похожие ситуации.
     
    Добавлено:
    З.ы. Смотрите placeholders в справке и примеры из библиотеки.
    Но программа другая в плане интерфейса и юзабилити. Ничего общего с TP.

    Всего записей: 1327 | Зарегистр. 03-03-2008 | Отправлено: 00:00 10-08-2018
    evoroz



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

    Всего записей: 3487 | Зарегистр. 30-03-2002 | Отправлено: 02:23 10-08-2018
    miranon



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    evoroz
    Большое спасибо за помощь, всё работает.

    Всего записей: 504 | Зарегистр. 03-06-2004 | Отправлено: 15:14 10-08-2018
    Lonely_Raven



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Доброго времени суток!
     
    Мне нужно извлечь текст рефератов из веб-страничек. Пример исходной страницы: https://journals.lww.com/aidsonline/Abstract/2018/09240/Opportunistic_diseases_diminish_the_clinical.6.aspx
     
    Таких у меня в папке примерно 150.
    На выходе я хочу получить один-единственный файл, в котором будут последовательно содержаться (для каждой статьи) следующие данные (именно в указанном порядке):
    Подраздел журнала, например, Clinical Science
    Заголовок статьи
    Перечень авторов
    Текст реферата (от Introduction до Conclusion)
    Copyright  
    Журнал, дата, том, выпуск, страницы
    DOI
     
    Как эту задачу решить с помощь Textpipe? Если я добавляю два фильтра Extract matches, получаю ноль результатов (хотя по отдельности каждый работает). Если использую Extract lines matching pattern list, то получаю либо вообще всё содержимое файлов, либо текст без doi и выходных сведений, либо с doi в неправильном месте и без чего-то еще. И так и эдак пробовал - не выходит.
    Что делать?
     
     

     

    Всего записей: 195 | Зарегистр. 01-11-2005 | Отправлено: 18:51 27-09-2018
    evoroz



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Lonely_Raven
    Вместо .+? попробуйте (.*)

    Всего записей: 3487 | Зарегистр. 30-03-2002 | Отправлено: 21:59 27-09-2018
    Lonely_Raven



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Почти получилось, даже без регулярных выражений. Просто вбил в программу слова, которые есть в нужных мне строках. Сейчас у меня фильтр Extract lines matching pearl pattern [] с таким набором:
    abstract-section-header
    subsection
    doi:  
    <header><h1>
     
    Но, похоже, программа выдает найденные строчки в том порядке, в котором они идут в оригинально файле. Когда я меняю порядок выражений для поиска, порядок выдачи не меняется
     
    Пара вопросов:
    1. Можно ли побороть вышеописанную проблему? Т.е. задать свой порядок выдачи найденных строк.
    2. Можно ли последовательно применить более одного фильтра Extract lines matching (grep) к каждому файлу? Я имею в виду, чтобы это делалось автоматически

    Всего записей: 195 | Зарегистр. 01-11-2005 | Отправлено: 14:10 28-09-2018
    evoroz



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Lonely_Raven
    1. Конечно.
    У вас получается набор строк. Например:
    doi: набор символов 1 doi
    <header><h1> набор символов 2 <h1><header>
    Пишите выражение Search & Replace поиск:
    doi: (.*) doi
    <header><h1> (.*) <h1><header>
     
    Замена:
    $2
    $1
     
    Результат:
    набор символов 2
    набор символов 1
     
    2. Можно конечно. Но вы должны понимать, что на вход второго фильтра пойдет то, что вышло из первого.

    Всего записей: 3487 | Зарегистр. 30-03-2002 | Отправлено: 16:42 28-09-2018
    Lonely_Raven



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    evoroz
    Спасибо за подсказки!
     
    По п.1 и Emeditor'ом можно сделать. Мне так даже привычнее.
     
    По п. 2 элементарная вещь, но как-то сам не мог догадаться.
     
    Textpipe - хорошая штука. Как-то не попадала в поле моего зрения, потому что не знал о возможности экстрагирования у нее. Буду пробовать дальше!

    Всего записей: 195 | Зарегистр. 01-11-2005 | Отправлено: 16:51 28-09-2018
    seva1

    Advanced Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Всем привет!
     
    Настраиваю вот такую считку файлов из папки  
    https://goo.gl/3iTW4G
     
    Выдает вот такую ошибку
    https://goo.gl/PRRNfh
     
    То есть мне внутри папки, откуда идет считка нужно отфильтровать одну папку
     
    Подскажите пожалуйста, в чем ошибка?
     
    Благодарю!

    Всего записей: 1153 | Зарегистр. 10-12-2003 | Отправлено: 07:39 20-10-2018
    evoroz



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

    Цитата:
    То есть мне внутри папки, откуда идет считка нужно отфильтровать одну папку  

    А чего бы не сделать с помощью Include/Exclude при настройке папок?

    Всего записей: 3487 | Зарегистр. 30-03-2002 | Отправлено: 22:14 20-10-2018
    seva1

    Advanced Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    evoroz Так я вроде бы же так и делаю?  
     
    http://scr.is-by.us/1/2018-10-20_07-38-32.png
    Включаю корневую папку и исключаю не нужную
     
    В корневой папке, кол-во папок разрастается каждый день, поэтому нужно сначало все их считать

    Всего записей: 1153 | Зарегистр. 10-12-2003 | Отправлено: 15:10 22-10-2018
    evoroz



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    А откуда берется выражение, которое в ошибку выливается?

    Всего записей: 3487 | Зарегистр. 30-03-2002 | Отправлено: 19:35 22-10-2018
    sasa236

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Просьба помочь!
    Нужно удалить дубли строк в файлах, не затрагивая при этом пустые строки.
    Вроде нужно использовать Т-фильтр, но с ним перестает работать вообще.  

    Всего записей: 11 | Зарегистр. 13-07-2010 | Отправлено: 21:13 28-10-2018
    seva1

    Advanced Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    evoroz в том то и дело не понимаю, ошибка появляется когда исключаю папку внутри папки

    Всего записей: 1153 | Зарегистр. 10-12-2003 | Отправлено: 07:27 29-10-2018
    Romul81



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

    Цитата:
    Нужно удалить дубли строк в файлах, не затрагивая при этом пустые строки.

     
    Если дублирующиеся строки идут подряд, то используйте эту регулярку:
    Найти:

    Код:
    ^(.+)(\r?\n\1)+$

    Заменить:

    Код:
    $1

     
    Если раскиданы по всему файлу
    Найти:

    Код:
    ^(.++)\r?\n(?=(?:^(?!\1$).*+\r?\n)*+\1$)

    Заменить: пусто.
    Во втором случае, имейте в виду, что будет оставаться только последний из дубликатов.

    Всего записей: 1327 | Зарегистр. 03-03-2008 | Отправлено: 15:33 29-10-2018
    Открыть новую тему     Написать ответ в эту тему

    Страницы: 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