Преобразования текста

%UMCCUTFROMTO("Text","FromS","ToS") - вырезает из текста часть от первого вхождения "FromS" до первого вхождения "ToS".
Например, %UMCCUTFROMTO("Я был когда-то странной","был ","-то") вернёт "когда".
Если "fromS" либо "ToS" не содержатся в тексте, текст по соответствующей строке не обрезается.
Например, %UMCCUTFROMTO("Я был когда-то странной","Собака","-то") даст "я был когда". %UMCIZVRAT("Text",Value) - обрабатывает русский текст, заменяя случайным образом гласные буквы - на другие гласные, а согласные - на другие согласные. Параметр Value указывает частоту изменений. 0 - текст не будет обработан, 100 - все буквы будут заменены, 5 - будет обработано примерно 5% текста.
%UMCTRANSLIT("Text") - преобразует русский текст в транслит, совместимый с правилами транскрипции, принятой в английском языке. %UMCTRANSLIT("Черенок") даст Cherenok
%UMCTRANSLIT2("Text") - преобразует русский текст в транслит по "варварской" транскрипции путём замены русских букв на сходные по написанию латинские. %UMCTRANSLIT2("Черенок") даст 4epeHok
%UMCRCASE ("Text") - преобразует текст в текст со случайным регистром символов.

%UMCMKPLAIN("Text") - преобразует многострочный текст в одну строку.
%UMCKILLEMPTYSTR("Text") - возвращает текст без пустых строк и строк, состоящих только из пробелов.

%UMCNUMTOSTR(Number,p,g) либо %UMCNUMTOSTR(Number,p) либо %UMCNUMTOSTR(Number) - преобразует число цифрой в количественное числительное прописью. P указывает падеж. (I или И - именительный, R или Р(русское) - родительный, D или Д - дательный, T(латинская или русская) - творительный, P(латинский) или П - предложный. Винительный падеж (одуш.) совпадает по форме с родительным, или именительным (неодуш.). По умолчанию - именительный падеж). g указывает род. (M (латинская или русская) - мужской род, F или Ж - женский. По умолчанию - мужской). Например, %UMCNUMTOSTR(43008040,I) даст сорок три миллиона восемь тысяч сорок.
%UMCNUMTOSTRА(Number,p,g) - преобразует число цифрой в порядковое числительное прописью. P указывает падеж. (I или И - именительный, R или Р(русское) - родительный, D или Д - дательный, T(латинская или русская) - творительный, P(латинский) или П - предложный. Винительный падеж (одуш.) совпадает по форме с родительным, или именительным (неодуш.). По умолчанию - именительный падеж). g указывает род/число. (M (латинская или русская) - мужской род, ед. ч., F или Ж - женский ед. ч., С (русская) или N - средний род, ед. ч., Н (русская) или P (латинская) - множественное число. По умолчанию используется мужской род). Например, %UMCNUMTOSTRA(2737783,I,N) даст два миллиона семьсот тридцать семь тысяч семьсот восемьдесят третье.
%UMCREPLACENUM("Text","plist","llist") - заменяет в указанном тексте числа цифрами на числительные. Параметр plist служит для указания падежа, где N-я буква - это падеж N-й цифры, встретившейся в тексте. Параметр llist служит для указания рода, числа и типа числительного. (Возможные значения: M (латинская или русская) - мужской род, ед. ч., порядковое, F или Ж - женский ед. ч., порядковое, С (русская) или N - средний род, ед. ч., порядковое, Н (русская) или P (латинская) - множественное число, порядковое, m или м, или 1 - мужской род, количественное, f, или ж, или 2 - женский род, количественное).. По умолчанию используется мужской род). По умолчанию падеж полагается именительным, тип - количественное. Например, %UMCREPLACENUM("12 октября 2004 года 23:20","ИРИИ","СС1м") вернёт строку
двенадцатое октября две тысячи четвёртого года двадцать три:двадцать
где первое числительное - 12 - стоит в именительном падеже,среднем роде и является порядковым, второе - 2004 - в родительном, среднем роде, является порядковым, третье и четвёртое числа - 23 и 20 - стоят в именительном падеже, мужском роде, являются количественными числительным. Параметры "plist" и "llist" могут отсутствовать либо быть короче общего числа чисел в тексте. В этом случае по используются значения по умолчанию, где это необходимо.
%UMCBYTESTOSTRRUS(P,UNITS,NUMBER) - преобразующий число в байтах в число в байтах прописью.
( падежи слова "байт" и числительного согласуются!).
P - падеж (I или И - именительный, R или Р(русское) - родительный, D или Д - дательный, T(латинская или русская) - творительный, P(латинский) или П - предложный. Винительный падеж (одуш.) совпадает по форме с родительным, или именительным (неодуш.). По умолчанию - именительный падеж).
UNIT - единицы измерения на выходе (B-байты, K-килобайты, M-мегабайты, G-гигабайты, T-терабайты).
NUMBER - Само число. Можно использовать в комплекте с макросами, возвращающими размер файлов или свободного места на диске, указав им в параметрах, что возвращаемое значение должно быть в БАЙТАХ.
%UMCBYTESTOSTRRUS(I,B,10001110), %UMCBYTESTOSTRRUS(R,K,10001110) и %UMCBYTESTOSTRRUS(D,M,10001110) дадут, соответственно, десять миллионов одна тысяча сто десять байт девяти тысяч семиста шестидесяти шести килобайт девяти мегабайтам.
%UMCREPLACE("Text","TextToFind","TextToReplace") - заменяет все вхождения подстроки TextToFind на TextToReplace в тексте. TextToFind не должна содержаться в TextToReplace. Например, %UMCREPLACE("Я люблю Васю","Васю", "Петю") даст я люблю Петю
%UMCREPLACECHAR("Text1","Char","Text2") - ищет в тексте text1 вхождения символа char и заменяет его на строку text2.
Например, %UMCREPLACECHAR("vasya@pisem.net","@","<сабака>") даст в результате vasya<сабака>pisem.net
%UMCREPLACEREGEXP("Text","PatternToSearch","ReplaceWith") - позволяет осуществлять  замену  в тексте,  используя  регулярные  выражения.
Например, %UMCREPLACEREGEXP("%Text","U[M,m]C","Useless Macro Collection") заменит в исходном тексте письма все вхождения строк "UMC" и "UmC" на "Useless Macro Collection"
%UMCGREP("Text","RegExpToFind",Separator) - позволяет находить ВСЕ вхождения регулярного выражения RegExpToFind в строке "Text". Separator - параметр, определяющий разделитель результатов. Может принимать следующие значения: L - новая строка (каждое новое вхождение будет располагаться на новой строке), S - пробел, C - запятая, N - разделитель отсутствует. По умолчанию (если параметр опущен) - N.

%UMCCUTON("Text","Delimiter") - обрезает текст, начиная с первого вхождения разделителя.
%UMCFILL("Text","Char",Width,"LeadIn","Leadout",BegStr,EndStr,JustifyType,"Delimiter") - заполняет текст символами "Char" до указанной ширины строки, вставляет в начале и конце каждой строки "LeadIn" и "LeadOut", добавляет в начало и конец BegStr и EndStr строк, заполненных "Char", выравнивает текст по центру (JustifyType=0), влево (1) или вправо (2), обрезает текст по "Delimiter". Поддерживает многострочный текст. Например, %UMCFILL("%UMCCPUNAME",".",80,"[ "," ]",2,2,2) у меня даёт такой результат:
................................................................................
................................................................................
.....................................................[ AMD Athlon(tm) XP 2000+ ]
................................................................................
................................................................................
................................................................................
Первые три параметра - "Text", "Char" и Width обязательны, остальные могут быть пропущены.

%UMCXOR("Text",mask) - кодирует текст с помощью обратимого XOR-шифрования :)

%UMCCNT("text",ID)подсчитывает количество букв (если ID равен L), пробелов (S), или знаков препинания (P). По умолчанию ID полагается равным L.
Например, %UMCCNT("%Text",P) возвратит количество знаков препинания в исходном письме.

%UMCREVERSE("Text") - возвращает строку "задом наперёд". Поддерживает многострочный текст. %UMCREVERSE("абырвалг") даст главрыба

%UMCSTRINGS("String1",...) - преобразует последовательность строк в список. Например, %UMCSTRINGS("раз","два","и обчёлся") даст
раз
два
и обчёлся

%UMCPS("Text","Prefix","Suffix") - добавляет в начало каждой строки текста префикс, а в конец - суффикс. Например, %UMCPS(%UMCGETLINKS("глючная http://a.com/a.zip или же http://muh.ru/b.avi"),"GET ") даст
GET http://a.com/a.zip
GET http://muh.ru/b.avi
Параметр Prefix и (или) параметр Suffix могут быть пропущены.