Дополнение №15


Параметр formt<>, ?F (см. в Дополнение №24)



Описание параметра.

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

Конструкция параметра:

1. Встроенные шаблоны (номера из таблицы):

formt<1(,2,3,..., N)>

2. Пользовательские шаблоны:

formt<u1,...,uN>

3. Регулярные выражения:

formt<0!!RegExp!!Replace>

4. Объединение вариантов в одной строке:

formt<1(,2,3,..., N),u1,...,uN!!RegExp!!Replace>

5. Использование цифровых диапазонов: (добавлено в версии 13.3)
Если необходимо прописать несколько подобных имён шаблонов, имеющих конечную и последовательную нумерацию, то для экономии места можно использовать диапазон, используя двойной дефис --

formt<1,2,3,4,5,u1,u2,u3,u4,u5,u6,u7,u8,h2,h8,e2,e3,e4,e5,e6,e7>

formt<1--5,u1--u8,h2,h8,e2--e7>




Специальные теги в строке, позволяющие производить дополнительные действия:

1. :A:

formt<1:A:,u1:A:,u2,...>

Тег :A: прописывается после номера или ключа.
Означает условие: если после заданной обработки (номера или ключа) возвращается пустой результат, то это преобразование игнорируется, возвращается предыдущая строка для обработки с помощью последующих номеров или ключей.

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

2. :B:

formt<6,1,3...,N:B:,key1,key2,...,keyN:B:key1,key2,...,keyN>

Тег :B: прописывается между номерами и ключами.
Означает условие: если преобразование параметров (между :B:) возвращает не пустой результат, то остальные параметры не вычисляются.
Между тегом :B: могут использоваться теги :A:, :C:, :D:, :E:

3. :C:

formt<6,1,3...,N:C:,key1,key2,...,keyN:C:key1,key2,...,keyN:C:Delimeter>

Тег :C: прописывается между номерами и ключами.
Каждому параметру передаётся начальная строка (текст) для преобразования, полученные результаты последовательно объединяются через разделитель Delimeter, который прописывается после последнего тега :C:.
По умолчанию начальная строка передаётся первому параметру, результат преобразования передаётся второму параметру и т.д.
Между тегом :C: могут использоваться теги :A:, :D:, :E:

4. :D:
Тег :D: аналог тега :B:
Между тегом :D: могут использоваться теги :A:, :E:

5. :E:
Тег :E: аналог тега :С:
Между тегом :D: могут использоваться теги :A:



Если в регулярных выражениях, которые используются в командной строке, необходимы символы "<" и ">", то используйте "{{" и "}}" соответственно
Так же есть возможность вставлять в шаблоны необходимые символы с помощью функций Autoit :
Chr() и ChrW() заменяются соответствующими символами.
ClipGet() заменяется содержимым буфера обмена.
Number() позволяет производить математические действия.
StringLeft() позволяет получать указанное число символов строки слева.
StringRight() позволяет получать указанное число символов строки справа.
StringMid() позволяет получать часть символов строки.
StringLen() позволяет получать количество символов строки.



ПараметрОписание
Numbers Форматирует текст встроенными шаблонами.
  1,2,3,..., N - номера преобразований (см. таблицу значений форматирования текста)
    Может быть несколько в любом порядке перечисленных через запятую.

Пример записи:

stext=%L||x||formt<6,1>||clip<> ;; извлечь все ссылки из выделенных файлов, удалить дубликаты и записать в буфер обмена

n!!RegExp
-n!!RegExp
+n!!RegExp
Производит в тексте поиск совпадений регулярного выражения.
  n - номер преобразований из таблицы (по умолчанию 0)
    по умолчанию возвращаются все найденные совпадения через разделитель переноса строки.
    при -n возвращается 1 (совпадение найдено) или 0 (не найдено).
    при +n поиск до первого совпадения, возвращается первое найденное совпадение.
  RegExp - строка регулярных выражений для поиска.

Пример записи:

sends=-1!!-1||formt<0!!([^/]+)> GLOBALSENDS<a> ;; разбить путь ссылки в буфере обмена по обратным слешам и вывести результат

n!!RegExp!!Replace!!Flag Производит в тексте поиск и замену, используя регулярное выражение.
  n - номер преобразований из таблицы (по умолчанию 0)
  RegExp - строка регулярных выражений для поиска.
  Replace - текст замены регулярного выражения.
  Flag [необязательный] - количество замен в строке.
    по умолчанию 0 - выполняет замену всех найденных образцов.
 Возвращает строку преобразованную регулярным выражением.
#NumberLine:F: Сортирует файлы с помощью информации параметра info Дополнения №10.
  # - обязательный символ, означающий сортировку.
  Number - режим:
    0 - сортировать по возрастанию.
    1 - сортировать по убыванию.
    2 - сортировать по числовому возрастанию.
    3 - сортировать по числовому убыванию.
      (важно, при 2 и 3 выражение должно извлекать число)
    4 - удалять дубликаты.
    5 - удалять дубликаты (без учёта регистра).
  Line - строка параметров из Дополнения №10.
  :F: - тег, вместо которого будет вставлен объект из списка при сортировке.

  Есть возможность сортировать по нескольким данным из параметра info
    #NumberLine:F:&&Line:F:&& ... &&Line:F:
    Разделитель между параметрами &&

Пример записи:

global alist=%L||formt<#0i1:F:> GLOBALALIST<a> ;; сортировать выделенные изображения по ширине по возрастанию
global alist=%L||formt<#0o30:F:> GLOBALALIST<a> ;; сортировать выделенные файлы по дате создания по возрастанию
global alist=%L||formt<#1i1:F:> GLOBALALIST<a> ;; сортировать выделенные изображения по ширине по убыванию
global alist=%L||formt<#1o30:F:> GLOBALALIST<a> ;; сортировать выделенные файлы по дате создания по убыванию
global alist=%L||formt<#0f11:F:&&f12:F:> GLOBALALIST<a> ;; сортировать выделенные файлы по типу и имени по возрастанию
global alist=%L||formt<#1f11:F:&&f12:F:> GLOBALALIST<a> ;; сортировать выделенные файлы по типу и имени по убыванию

Ключи из секции [FormatUser] в TCIMG.ini
keys key1,key2,key3,...,keyN - имена ключей в секции [FormatUser] в TCIMG.ini, в которых прописываются пользовательские шаблоны регулярных выражений для дополнительного форматирования.
  Может быть несколько перечисленных в любом порядке через запятую.
  Имена пользовательских шаблонов могут содержать латинские символы, цифры.

Синтаксис:
  1. key=RegExp
    RegExp - строка регулярных выражений для поиска.
    Возвращаются все найденные совпадения через разделитель переноса строки.

Пример записи:

[FormatUser]
; найти все цифры
key1=(\d+)
; найти русские слова (более 2-х символов)
words1=(?i)([а-яё-]{3,})


  2. key=RegExp||Replace
    RegExp - строка регулярных выражений для поиска.
    Replace - текст замены регулярного выражения.
    Возвращает строку преобразованную регулярным выражением.

Пример записи:

[FormatUser]
; оставляет левую часть строк 4-е символа и правую часть строк 4-е символа
U3=(?m)^(.{4}).*(.{4})$||$1$2
; удалить повторы слов, которые стоят рядом
U4=(?<![^\s\A])([А-яЁё]+)[\h]+\1||\1

fun_keys Имена шаблонов с приставкой fun_ позволяют производить замену на "функцию"
Синтаксис:
  fun_key=RegExp||Replace||Count||Flag||StringNumber
    RegExp - строка регулярных выражений для поиска.
    Replace - текст замены регулярного выражения, в замене могут быть задействованы:
      - встроенные и вспомогательные функции Autoit
        (строки необходимо обрамлять одинарными кавычками и использовать символ присоединения строк &)
      - математические операторы при действиях с числами "+-*/^"
      - тернарные условия: (логическое выражение)?выражение1:выражение2
      - глобальные переменные $var_... , созданные в команде exect
      - глобальные переменные GLOBALNAME..., созданные другими командами см. Дополнение №23
      - теги:
        :NUMFORMAT: заменяется числом текущего найденного совпадения с шаблоном (отсчёт с 0)
        (можно использовать математические действия для получения других чисел (к примеру, :NUMFORMAT:+1))
        :MAXFORMAT: заменяется числом (количеством всех найденных совпадений с шаблоном)
        :QUOTES1: или :QUOTES2: добавляется в начале замены Replace
          :QUOTES1: - в найденных фрагментах игнорируются одинарные кавычки.
          :QUOTES2: - в найденных фрагментах игнорируются двойные кавычки.
        [:delete:] означает удаление совпадений (удаление найденных фраз).
    Count [необязательный]:
      1 - поочерёдная замена каждого найденного образца (по умолчанию)
      0 - одновременная замена всех найденных образцов
        (в некоторых случаях Count может использоваться как число замен)
    Flag [необязательный]:
      1 - обрабатывать параметры в тексте (по умолчанию)
        (параметры GLOBALNAME, [info], [input], ... и др. заменяются их значениями)
      0 - не обрабатывать
    StringNumber [необязательный]:
      Строка состоящая из номера или номеров найденных совпадений, которые необходимо заменить.
      Номера прописываются через запятую. Пример: 1,5,8
      При отрицательных числах отсчёт ведётся с конца. Пример: 3,-1,-2
      Поддерживается диапазон(ы) номеров. Пример: 2:5 Пример: 1,3:6,8:11,13:-1
      Первый символ "#" означает "кроме" заданных номеров. Пример: #1,5,8

      Первый символ "@" означает чередование в диапазоне найденных совпадений: @Start|End|Step|InArow, где:
        Start - минимальное значение диапазона.
        End - максимальное значение диапазона (при -1 все совпадения).
        Step - шаг чередования (по умолчанию 1).
        InArow - количество подряд номеров (по умолчанию 1).

Пример записи:

[FormatUser]
; fun_numplus - увеличение всех цифр на единицу
fun_numplus=(\d+)||Number($1)+1

; fun_uplo - левую часть от " - " перевести в верхний регистр, правую в нижний
fun_uplo=([^-]+)( - )(.+)||StringUpper('$1')
&'$2'&StringLower('$3')

; fun_numdel1- удалить 2-ю цифру
fun_numdel1=(\d+)||[:delete:]||1||0||2

; fun_numdel6 - удалить все цифры, кроме 1-й и 3-й
fun_numdel6=(\d+)||[:delete:]||1||0||#1,3

; fun_numcount1 - увеличение всех цифр на единицу, кроме первой
fun_numcount1=(\d+)||Number($1)+1||1||0||#1

; fun_numdel7 - удалить все цифры через одну, начиная с 1-й
fun_numdel7=(\d+)||[:delete:]||1||0||@1|-1|2

fnc_keys Имена шаблонов с приставкой fnc_ позволяют производить замену на "функцию".
Синтаксис:
  fnc_key=RegExp||Replace||Count
    RegExp - строка регулярных выражений для поиска.
    Replace - текст замены регулярного выражения, в замене могут быть задействованы:
      - $1, $2, ... $9 - группы замены; для отделения групп от цифр используются ${1}, ${2}, ... ${3}
      - встроенные и вспомогательные функции Autoit
        (строки необходимо обрамлять одинарными кавычками и использовать символ присоединения строк &)
      - математические операторы при действиях с числами "+-*/^"
      - тернарные условия: (логическое выражение)?выражение1:выражение2
      - глобальные переменные $var_... , созданные в команде exect
      - глобальные переменные GLOBALNAME..., созданные другими командами см. Дополнение №23
      - теги:
        :NUMFORMAT: заменяется числом текущего найденного совпадения с шаблоном (отсчёт с 0)
        (можно использовать математические действия для получения других чисел (к примеру, :NUMFORMAT:+1))
        :MAXFORMAT: заменяется числом (количеством всех найденных совпадений с шаблоном)
        [:delete:] означает удаление совпадений (удаление найденных фраз, относительно параметра Count).
        rnm<> заменяется случайными данными, параметры такие же как в Дополнении №30, кроме ?Count
        tnm<> заменяется числовым счётчиком, параметры такие же как в n9 см. Дополнение №10.
        enm<> заменяется буквенным счётчиком, параметры такие же как в n92 см. Дополнение №10.
        rom<> заменяется римским счётчиком, параметры такие же как в n94 см. Дополнение №10.
          rnm<>, tnm<>, enm<>, rom<> могут использоваться несколько раз в любой последовательности.
    Count [необязательный] возможны варианты:
        N - количество замен. По умолчанию 0 - выполняет замену всех найденных образцов.
        &StringNumber - преобразования заданных номеров найденных образцов.
        #StringNumber - преобразования кроме заданных номеров найденных образцов.
          StringNumber - строка состоящая из номера, номеров или диапазонов чисел.
          Номера прописываются через запятую. Пример: 1,5,8
          При отрицательных числах отсчёт ведётся с конца. Пример: 3,-1,-2
          Поддерживается диапазон(ы) номеров. Пример: 2:5 Пример: 1,3:6,8:11,13:-1
        @Start|End|Step|InArow, преобразования чередующих номеров найденных образцов, где:
          Start - минимальное значение диапазона.
          End - максимальное значение диапазона (при -1 все совпадения).
          Step - шаг чередования (по умолчанию 1).
          InArow - количество подряд номеров (по умолчанию 1).

Пример записи:

[FormatUser]
; увеличение всех цифр на единицу
fnc_xxx=(\d+)||Number($1)+1

; увеличение 1-й цифры на единицу
fnc_xxx=(\d+)||Number($1)+1||1

; увеличение первых 6-ти цифр на единицу
fnc_xxx=(\d+)||Number($1)+1||6

; увеличение 1-й и последней цифры на единицу
fnc_xxx=(\d+)||Number($1)+1||&1,-1

; увеличение с 5-й по 8-ю цифр на единицу
fnc_xxx=(\d+)||Number($1)+1||&5:8

; увеличение цифр на единицу, кроме 1-й и последней
fnc_xxx=(\d+)||Number($1)+1||#1,-1

; увеличение цифр на единицу, кроме с 5-й по 8-ю
fnc_xxx=(\d+)||Number($1)+1||#5:8

; увеличение всех цифр на единицу через одну, начиная с 1-й
fnc_xxx=(\d+)||Number($1)+1||@1|-1|2

; удаление первых 6-ти цифр
fnc_xxx=(\d+)||[:delete:]||6

; удаление 1-й и последней цифры
fnc_xxx=(\d+)||[:delete:]||&1,-1

; удаление цифр, кроме 1-й и последней
fnc_xxx=(\d+)||[:delete:]||#1,-1

; удаление всех цифр через одну, начиная с 1-й
fnc_xxx=(\d+)||[:delete:]||@1|-1|2

; замена всех цифр на счётчик
fnc_xxx=(\d+)||tnm<1|#|1|1|. ,>

; замена всех цифр на буквенный счётчик
fnc_xxx=(\d+)||enm<0|1|A|#|1|1>

; замена всех цифр на римский счётчик
fnc_xxx=(\d+)||rom<1|3999>

; замена всех цифр на случайные данные
fnc_xxx=(\d+)||rnm<1|10>

; пронумеровать строки текста, добавляя в начало счётчик
fnc_line1=(?m)(\A|\r\n|\r|\n)||'$1'&'tnm<1|#|1|1|. ,>'


Примечания:
По сравнению с ключами fun_key, ключи fnс_key гораздо быстрее обрабатывают большой текст.
sort_keys Имена шаблонов с приставкой sort_ позволяют сортировать текст с помощью регулярного выражения.
Синтаксис:
  sort_key=RegExp||Replace||Mode||Start||End||Func
    RegExp - строка регулярных выражений для поиска.
    Replace - текст замены регулярного выражения.
    Mode
      0 - сортировать по возрастанию.
      1 - сортировать по убыванию.
      2 - сортировать по числовому возрастанию.
      3 - сортировать по числовому убыванию.
        (важно, при 2 и 3 регулярное выражение должно извлекать число).
      4 - удалять дубликаты.
      5 - удалять дубликаты (без учёта регистра).
    Start [необязательный]
      индекс массива, от которого начинать сортировку (отсчёт с 0, по умолчанию 0).
    End [необязательный]
      индекс массива, в котором закончить сортировку (0 - до конца массива, по умолчанию 0).
    Func [необязательный]
      1 - вычислить с помощью функций Autoit (в замене Replace могут использоваться функции Autoit)
      0 - простая замена (по умолчанию).

Принцип работы:
  1. Текст разбивается построчно.
  2. В каждой строке ищется фраза, заданная регулярным выражением (поиск и замена).
  3. По найденным фразам сортируются строки текста.

Пример записи:

[FormatUser]
; сортировать по возрастанию по словам, исключая начальные символы неслова
sort_s1=(?i)([^a-zа-яё]*)([a-zа-яё]+)||$2||0

; сортировать по убыванию, исключая начальные символы неслова
sort_s2=(?i)([^a-zа-яё]*)([a-zа-яё]+)||$2||1

; сортировать по убыванию по длине строки
sort_len1=(?m)([^\r\n]+)||StringLen('$1')||0||0||0||1

; сортировка по числовому возрастанию ссылок вида https://234pi.com/d95e9734da.320.mp4
sort_num1=(?s).*[^\d](\d+)\.mp4||$1||2

; сортировка по числовому убыванию ссылок вида https://3453api.com/d95e9734da.320.mp4
sort_num2=(?s).*[^\d](\d+)\.mp4||$1||3

; удаление дубликатов по заданному регулярному выражению
sort_dd1=(?s)(.*[^\d])\d+\.mp4||$1||4


lot_keys Имена шаблонов с приставкой lot_ позволяют производить многократный поиск и замену.
Синтаксис:
  lot_key=RegExp||Replace
    RegExp - строка регулярных выражений для поиска.
    Replace - текст замены регулярного выражения.
Поиск и замена будут производиться пока замены не закончатся.

Пример записи:

[FormatUser]
; lot_del1 - удалить парные буквенные теги
lot_del1=(?si)<[a-z]>¤<[a-z]>||$1¤

rgx_keys Имена шаблонов с приставкой rgx_ позволяют производить поиск и назначать разделитель между найденными совпадениями.
Синтаксис:
  rgx_key=RegExp||Flag||Number||Delimeter
    RegExp - строка регулярных выражений для поиска.
    Flag - [необязательный] режим поиска:
      0 - возвращается 1, если совпадение найдено или 0, если не найдено.
      1 - поиск до первого совпадения, возвращается полное совпадение с шаблоном.
      3 - возвращаются все совпадения, разделённые разделителем Delimeter (по умолчанию).
    Number - [необязательный] позиция строки, начиная с которой будут искаться совпадения (по умолчанию 1)
    Delimeter - [необязательный] разделитель при объединении:
      символ или строка между найденными совпадениями (по умолчанию перенос строки)
В отличие от обычного поиска с регулярными выражениями, можно выбирать разделитель при объединении найденных совпадений (по умолчанию перенос строки @CRLF)
Может использоваться, когда регулярное выражение связано с получением нескольких строк.

Пример записи:

[FormatUser]
; rgx_line5 - разделить текст по 5 строк
rgx_line5=((?:[^\r\n]+(?:\r\n|$)*?){5})||3||1||#:#

cmd_keys Имена шаблонов с приставкой cmd_ позволяют производить преобразование с помощью сторонних консольных программ и утилит, а так же команд cmd.
Синтаксис:
  cmd_key=String
    String - возможны варианты:
      • строка команд и параметров
      • путь к программе и её строка команд и параметров
Принцип действий:
  1. Запускается заданная командная строка.
  2. Передаётся в консоль текст на форматирование.
  3. Считывается из консоли обработанный текст.

Пример записи:

[FormatUser]
; cmd_sort2 - сортировка в обратном порядке с помощью команды cmd sort
cmd_sort2=sort /r

; cmd_uniq1 - удаление дубликатов с помощью программы uniq
cmd_uniq1="%PROGRAMFILES(X86)%\GnuWin32\bin\uniq.exe"

; cmd_fmt1 - преобразование текста - 50 символов строке, остальное переносится на следующую строку
cmd_fmt1="%PROGRAMFILES(X86)%\GnuWin32\bin\fmt.exe" -w 50

; Можно использовать только имя утилиты, если прописать в autorun.cfg путь к программе
SetEnv /A /EV PATH ;%PROGRAMFILES(X86)%\GnuWin32\bin
; см. Дополнение №4, Основные вопросы
; После этого можно прописывать:

cmd_uniq1=uniq

ndb_keys Имена шаблонов с приставкой ndb_ позволяют нумеровать дублирующие фразы, заданные регулярным выражением.
Для каждой группы дубликатов отдельный счётчик.
Синтаксис:
  ndb_key=RegExp||Replace||Mode||Start
    RegExp - строка регулярных выражений для поиска.
    Replace - строка замены регулярного выражения.
      • чтобы вставить текст группы используются $1,$2,..., $9
      • группа для которой нужно произвести нумерацию заключается в угловые скобки и внутри в любом месте прописывается тег :NDB:, который будет заменён нумерацией, пример: <$2 :NDB:>
      • внутри <...> могут использоваться любые символы/разделители, кроме угловых скобок.
    Mode - [необязательный] режим нумерации:
      0 - первые найденные не нумеруются (по умолчанию).
      1 - нумеруются все, начиная с первого.
      2 - нумеруются только дубликаты, начиная с первого.
    Start - [необязательный] число с которого начинается нумерация (по умолчанию 1)

Пример записи:

[FormatUser]
; ndb_name1 - пронумеровать дубликаты имён списка путей фалов, для каждой группы дубликатов отдельный счётчик
ndb_name1=(?m)^(.+\\)([^\\]+)(\.[^.]+)$||$1<$2:NDB:>$3

; ndb_line1 - пронумеровать все строки, для каждой группы дубликатов отдельный счётчик
ndb_line1=(?m)^(.+)$||<:NDB: $1>||1

; ndb_line2 - пронумеровать строки, которые имеют дубликаты, для каждой группы дубликатов отдельный счётчик
ndb_line2=(?m)^(.+)$||<:NDB: $1>||2

ndb_word1 - пронумеровать все слова в предложении, для каждой группы дубликатов отдельный счётчик
; строка "soft boy soft boy soft boy soft boy" ==> "soft_1 boy_1 soft_2 boy_2 soft_3 boy_3 soft_4 boy_4"
ndb_word1=(*UCP)(\A|\W*)(\w+)(\W*|\z)||$1<$2_:NDB:>$3||1






Таблица значений форматирования текста:


ЗначениеОписание
00 или пустое значение не обрабатывается - переходит к следующему
1удаление дубликатов строк
27удаление дубликатов строк (без учёта регистра)
31удаление дубликатов строк, дубликаты заменяются пустой строкой
32удаление дубликатов строк (без учёта регистра), дубликаты заменяются пустой строкой
9удаление дублирующихся строк (остаются строки, которые не повторялись)
28удаление дублирующихся строк (остаются строки, которые не повторялись) (без учёта регистра)
2удаление уникальных значений строк (остаются строки только повторяющиеся в одном экземпляре)
29удаление уникальных значений строк (остаются строки только повторяющиеся в одном экземпляре) (без учёта регистра)
39удаление уникальных значений строк с сохранением последовательности встречающихся повторов (остаются строки только повторяющиеся в одном экземпляре)
40удаление уникальных значений строк с сохранением последовательности встречающихся повторов (остаются строки только повторяющиеся в одном экземпляре) (без учёта регистра)
26удаление уникальных значений строк (остаются все повторяющиеся строки)
30удаление уникальных значений строк (остаются все повторяющиеся строки) (без учёта регистра)
33возвращает текст, не содержащий повторов строк (из повторяющихся строк остаются только первые)
34возвращает текст, не содержащий повторов строк (из повторяющихся строк остаются только первые) (без учёта регистра)
35удаление повторяющихся подряд строк (из повторяющихся строк остаются только первые)
36удаление повторяющихся подряд строк (из повторяющихся строк остаются только первые) (без учёта регистра)
5реверс строк текста
  Получение различных объектов.
6получение всех ссылок
7получение всех е-mail адресов
8получение всех IP адресов
18получение строк, в начале которых есть числа
19получение строк, в начале которых нет чисел
100получение всех возможных путей (C:\xxx.... , %WINDIR%\xxx...)
  Сортировка строк.
3сортировка по возрастанию
4сортировка по убыванию
20сортировка по числовому возрастанию
21сортировка по числовому убыванию
22сортировка по длине строки по возрастанию
23сортировка по длине строки по убыванию
  Сортировка имен объектов пути.
24сортировка по числовому возрастанию начальных цифр имени объекта пути
25сортировка по числовому возрастанию конечных цифр имени объекта пути
37сортировка по числовому убыванию начальных цифр имени объекта пути
38сортировка по числовому убыванию конечных цифр имени объекта пути
  Поочерёдная числовая и буквенная сортировка строк, в начале которых есть/нет чисел.
100
9
a
z
119
0
z
a
120
9
z
a
139
0
a
z
14a
z
0
9
15z
a
9
0
16a
z
9
0
17z
a
0
9
  Удаление различных символов.
51удаление лишних пустых строк
52удаление конечных пробелов, табуляции в строках (Chr(9), Chr(32), Chr(160))
53удаление начальных пробелов, табуляции в строках ...
54удаление начальных и конечных пробелов, табуляции в строках ...
55удаление всех пробелов, табуляции в строках ...
56удаление более одного пробела, табуляции в строках ...
57удалить переводы строк
58заменить переводы строк на пробел
59удаление первых пустых строк
60удаление последних пустых строк
61удаление по краям пустых строк
62удаление более одной пустой строки
63удаление всех пустых строк
64удаление всех табов в строках
66 удаление всех пустых строк
  пустые строки могут содержать пустые символы: Chr(9), Chr(10), Chr(12), Chr(13), Chr(32)
  (перенос страницы, табуляция, возврат каретки, перевод строки и пробел)
  Различные замены и удаления объектов.
65замена всех переносов подряд \r и \n на \r\n (@CR и @LF на @CRLF)
70
75
удаление тегов в html или конвертация htm* в txt
  70 - часть тегов заменяются на пробел.
  75 - теги удаляются.
72замена ссылки-мнемоники html на символы
  &plusmn; будет заменён на символ ±
73 замена ссылки-мнемоники html на символы (тоже что и режим 72)
замена кодов html на символы
  &#8364; будет заменён на символ
Описание (см. Мнемоники в HTML)
Для просмотра символов, кодов и мнемоники можно воспользоваться командой symvw
80 декодирование в тексте фраз URL UTF-8
(декодирует "%D0%A3%D1%82%D0%B8%D0%BB%D0%B8%D1%82%D0%B0" в слово "Утилита")
тоже самое, что и fun_convert6=((?:%[\dA-F]{2})+)||_StringConv('$1','#U¤¤?D65001') , но быстрее при повторяющихся фразах.



© Аверин Андрей для Total Commander Image  Averin-And@yandex.ru