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

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

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Romul81
     
    Спасибо! Первый код работает, второй почему-то нет.

    Всего записей: 11 | Зарегистр. 13-07-2010 | Отправлено: 23:55 30-10-2018 | Исправлено: sasa236, 23:56 30-10-2018
    Romul81



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

    Цитата:
    второй почему-то нет

    По идее PCRE должен поддерживать поцессивные квантификаторы. Но даже с ними эта регулярка на несколько порядков тяжелее первой (зависит от объёма файлов).
    Проверьте опции рег. вы-я Perl - Включить жадный режим, который является нормальным во всех диалектах (нижнее радио) - и точка НЕ находит окончания строк (убрать галку). Увеличьте буфер до размера самого большого файла, т.к. если дублирующая строка находится в начале и в конце файла, регулярка должна его прочесть полностью.
     
    А сама регулярка рабочая.
     
    Добавлено:
    З.Ы. Те же опции Perl нужно выставить и для первой регулярки, чтоб она корректно работала.
    З.З.Ы. Для первой регулярки большой буфер не нужен.

    Всего записей: 1326 | Зарегистр. 03-03-2008 | Отправлено: 00:09 31-10-2018 | Исправлено: Romul81, 00:24 31-10-2018
    sasa236

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Romul81
     
    Огромное спасибо, помогло!

    Всего записей: 11 | Зарегистр. 13-07-2010 | Отправлено: 00:26 31-10-2018
    sasa236

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Подскажите, пожалуйста, можно ли сделать скрипт для пакетного переименования файлов по заголовку текста в файле (т.е. по первой строке содержимого файла)?

    Всего записей: 11 | Зарегистр. 13-07-2010 | Отправлено: 17:18 12-11-2018
    Romul81



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    sasa236
    Периодически поднимается этот вопрос. Проще, имхо, сделать в  PowerGREP. Смотрите соотв. тему и гляньте обязательно пример из библиотеки. Там ещё, вроде, что-то есть на эту тему.

    Всего записей: 1326 | Зарегистр. 03-03-2008 | Отправлено: 17:25 12-11-2018
    Holder 2002



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Помогите обработать csv файл
    A файле след. данные
    "46-48
     50-52
     54-56
     58-60
     62-64"
    "46-48
     58-60"
    "Размер 46-48, Рост 170
     Размер 54-56, Рост 188
     Размер 62-64, Рост 188"
     
    На выходе получать
    "select|Размер|46-48|1|100|1|+|0.0000|+|0|+|0.00000000
    select|Размер|50-52|1|100|1|+|0.0000|+|0|+|0.00000000
    select|Размер|54-56|1|100|1|+|0.0000|+|0|+|0.00000000
    select|Размер|58-60|1|100|1|+|0.0000|+|0|+|0.00000000
    select|Размер|62-64|1|100|1|+|0.0000|+|0|+|0.00000000"
    "select|Размер|46-48|1|100|1|+|0.0000|+|0|+|0.00000000
    select|Размер|58-60|1|100|1|+|0.0000|+|0|+|0.00000000"
    "select|Размер|Размер 46-48, Рост 170|1|100|1|+|0.0000|+|0|+|0.00000000
    select|Размер|Размер 54-56, Рост 188|1|100|1|+|0.0000|+|0|+|0.00000000
    select|Размер|Размер 62-64, Рост 188|1|100|1|+|0.0000|+|0|+|0.00000000"
     
    Сам фильтр, через буфер обмена, я создал, по одной ячейки из csv файла все работает, а как сделать весь файл целиком, 500+ строк!
     
    Спасибо!

    Всего записей: 158 | Зарегистр. 27-02-2002 | Отправлено: 19:18 14-11-2018
    Romul81



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Holder 2002
    Иерархия фильтров:
     
    Input
    -Each Line in Turn
    --Your filter (for 1 line only)
     
    Т.е. вашу обработку надо поместить в качестве суб-фильтра в фильтр Each Line in Turn, который, в свою очередь, будет применяться к буферу обмена, в котором будут находиться  
    многострочные данные.
     
    Это если вы под "ячейкой" понимаете строку CSV с разделителем.

    Всего записей: 1326 | Зарегистр. 03-03-2008 | Отправлено: 19:28 14-11-2018
    Holder 2002



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Не получается...
    Да, под ячейкой понимаю строку CSV с разделителем
     
    Добавлено:
    На выходе получаю
    "select|Размер|"46-48|1|100|1|+|0.0000|+|0|+|0.00000000
    "select|Размер|50-52|1|100|1|+|0.0000|+|0|+|0.00000000
    select|Размер|54-56|1|100|1|+|0.0000|+|0|+|0.00000000
    select|Размер|58-60|1|100|1|+|0.0000|+|0|+|0.00000000
    select|Размер|62-64"|1|100|1|+|0.0000|+|0|+|0.00000000
    select|Размер|"46-48|1|100|1|+|0.0000|+|0|+|0.00000000
    select|Размер|58-60"|1|100|1|+|0.0000|+|0|+|0.00000000
     
    Добавлено:
    А должно быть
    "select|Размер|46-48|1|100|1|+|0.0000|+|0|+|0.00000000  
    select|Размер|50-52|1|100|1|+|0.0000|+|0|+|0.00000000  
    select|Размер|54-56|1|100|1|+|0.0000|+|0|+|0.00000000  
    select|Размер|58-60|1|100|1|+|0.0000|+|0|+|0.00000000  
    select|Размер|62-64|1|100|1|+|0.0000|+|0|+|0.00000000"  
    "select|Размер|46-48|1|100|1|+|0.0000|+|0|+|0.00000000  
    select|Размер|58-60|1|100|1|+|0.0000|+|0|+|0.00000000"

    Всего записей: 158 | Зарегистр. 27-02-2002 | Отправлено: 19:43 14-11-2018
    Romul81



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

    Цитата:
    А должно быть..

    В таком случае, в группе фильтров Restrict выбираете фильтр Restrict to pattern пишите регулярку Perl для захвата блока данных, напр. "[^"]+" и эти данные отправляете в свой суб-фильтр. В нём уже строите свой блок как вам надо, включая кавычки. Возможно, придётся дополнительно использовать субфильтры, тот же Each Line in Turn, к примеру, но уже в рамках найденного блока данных. В конце обработки блока добавляете начальную и завершающую кавычки, если вы их удалили на этапе обработки блока.

    Всего записей: 1326 | Зарегистр. 03-03-2008 | Отправлено: 20:07 14-11-2018
    Holder 2002



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Это сложно для меня. Буду руками делать, по одной...
     
    Спасибо!

    Всего записей: 158 | Зарегистр. 27-02-2002 | Отправлено: 20:11 14-11-2018
    evoroz



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Можно как-то так
     
    Special -> Script и ввести текст
     
    'This example script keeps a line counter that  
    'does not reset for each file
     
    'Our line counter
    dim a
     
    '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)
     
    If a = 1 Then
    processLine = """select|Размер|" & Mid (line, 2) & "|1|100|1|+|0.0000|+|0|+|0.00000000" & EOL
    End If  
     
    If a = 0 Then
    processLine = "select|Размер|" & line & "|1|100|1|+|0.0000|+|0|+|0.00000000" & EOL
    End If  
     
    If a > 1 Then
    processLine = "select|Размер|" & Mid (line, 1, Len (line)-2) & "|1|100|1|+|0.0000|+|0|+|0.00000000" & """" & EOL
    End If  
     
    end function
     
     
    'Called at the start of a processing job -
    'perform one-time initialisation here
    sub startJob()
      a = 0
    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 = ""
    end function
     
     
    'Called before each file is closed -
    'flush all pending file output here
    function endFile()
      endFile = ""
    end function

    Всего записей: 3487 | Зарегистр. 30-03-2002 | Отправлено: 12:17 15-11-2018
    seva1

    Advanced Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Всем привет
    У меня есть сохранненные настройки фильтрации TextPipe. Вопрос - а как то можно по шедулеру запускать выполнение этих файлов? Либо если можно через bat(cmd) фаил запускать выполнение сохранненых шаблонов(.fll) то подскажите плиз как это можно сделать?
     
    Благодарю!

    Всего записей: 1153 | Зарегистр. 10-12-2003 | Отправлено: 09:26 18-03-2019
    Rustamer



    Ореховый магнат
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    seva1
    В справке есть описание параметров запуска из cmd  
    Advanced Topics-> Command Line Options
    Также в самой программе есть мастер для генерации простейших команд типа 'открыть фильтр и запустить его' - см. Command line wizard

    Всего записей: 1721 | Зарегистр. 16-02-2005 | Отправлено: 10:49 18-03-2019
    Lonely_Raven



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Всем привет!
     
    Можно ли заставить Textpipe извлекать из файла строку, содержащую определенную подстроку, а также заданное количество следующих строк независимо от того, что в этих последующих строках содержится?
     
    Пример: страница, расположенная по адресу https://journals.lww.com/aidsonline/Abstract/2019/04010/Clinical_trials_of_antiretroviral_treatment.3.aspx
     
    Нужно извлечь из нее абзац, содержащий "article-header" и пять последующих абзацев (строк, разделенных CR+LF), включая "EDITORIAL REVIEW".
     
    ДОБАВЛЕНО
    Разобрался сам. Фильтр Extract lines matching (grep) и в "Контекст строк --> После соответствия --> указать "5"

    Всего записей: 195 | Зарегистр. 01-11-2005 | Отправлено: 15:35 22-03-2019 | Исправлено: Lonely_Raven, 20:07 22-03-2019
    seva1

    Advanced Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Всем привет
     
    Каждое утро захожду в шаблоны заданий поиска и меняю в задачи grep filter дату
    https://goo.gl/2XQi8n
    Чтобы отфильтровать сегодняшние записи
     
    Скажите, может быть есть какие-то макросы чтобы делать автоподстановку даты в формате
    24.03.2019
    И  
    24.03.2019 15  - в данном случае 15 это предыдущий час относительно текущего
     
    Спасибо большое!  
     
    Добавлено:
    Rustamer спасибо огромное, разбираюсь!  
     
    Есть два вопроса
    1) При запуске textpipe выскакивает данная ошибка
    https://goo.gl/9sUt5C
    Хотя фильтр я 100% в текущей версии создавал, почему такое может быть? Пока не нажмешь ОК задача не продолжиться
     
    2) Формата выполнения задач в фоне без всплывания окон нету да?  
     
    Сделал cmd  
    chcp 1251
    "C:\Program Files (x86)\DataMystic\TextPipe\textpipe.exe" "/f=D:\folder\smm\importAll\socialkitLog\Отправлено сообщений.fll" /g
    pause
     
    Единственное ругается на то что фильтр в pro версии создан хотя я не понимаю почему.

    Всего записей: 1153 | Зарегистр. 10-12-2003 | Отправлено: 05:23 24-03-2019 | Исправлено: seva1, 05:31 24-03-2019
    l0cky



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

    Цитата:
     При запуске textpipe выскакивает данная ошибка
     
    это происходит, если поставить сначала 10 версию, а потом снести и поставить 9.
    Надо удалить папку DataMystic из папки Мои документы  
    C:\Users\...\Documents\DataMystic\TextPipe
     
    подскажите, как в TextPipe строку вида

    Цитата:
    \u0410 \u0411 \u0412 \u0413 \u0414

    преобразовать в обычный текст (а б в г д) ?

    Всего записей: 144 | Зарегистр. 28-10-2003 | Отправлено: 14:22 12-04-2019 | Исправлено: l0cky, 12:15 16-04-2019
    evoroz



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

    Цитата:
    подскажите, как в TextPipe строку вида  
     
    Цитата:
    \u0410 \u0411 \u0412 \u0413 \u0414
     
    преобразовать в обычный текст (а б в г д) ?

     
    Здесь мне кажется только через замену отдельный символ \u0410 на символ а и т.д.
    Фильтр Replace list

    Всего записей: 3487 | Зарегистр. 30-03-2002 | Отправлено: 19:13 12-04-2019 | Исправлено: evoroz, 19:14 12-04-2019
    l0cky



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

    Цитата:
    только через замену отдельный символ \u0410 на символ а и т.д.

     
    Это я пробовал, но TextPipe выдаёт сообщение, что не обрабатывает \U и \u.
    (причина этого, полагаю, в том, что Replace list заточен под обработку regex и  
    воспринимает \u, как regex инструкцию)
    Если предварительно поменять \u на др набор символов, через Find Exactly, то  
    не ругается, но и полученные блоки на буквы не меняет.
     
     

    Всего записей: 144 | Зарегистр. 28-10-2003 | Отправлено: 21:07 12-04-2019 | Исправлено: l0cky, 21:30 12-04-2019
    evoroz



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

    Цитата:
    причина этого, полагаю, в том, что Replace list заточен под обработку regex

    Поставьте Find Type: Exact иначе вы сами указываете на regex

    Всего записей: 3487 | Зарегистр. 30-03-2002 | Отправлено: 21:35 12-04-2019
    l0cky



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Спасибо, не заметил, что по умолчанию у меня Patern Perl подставлялся

    Всего записей: 144 | Зарегистр. 28-10-2003 | Отправлено: 22:22 12-04-2019
    Открыть новую тему     Написать ответ в эту тему

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