INI-файлы со списками замен

INI-файлы со списками замен

Каждая строка такого файла содержит шаблон регулярного выражения и текст, которым будет заменен данный шаблон в тексте; между ними стоит знак равенства (=). Необходимо заметить, что замены осуществляются в том порядке, в котором они расположены в INI-файле. Например, для двух строк:

крыса=мышь
мышь=хомяк

слово "крыса" будет заменено на "хомяк". Следует быть внимательными и обращать внимание не только на синтаксис правил замены, но и на последовательность их расположения.

Строки комментариев начинаются со знака "решетка" (#).

По умолчанию программа не учитывает различий между прописными и строчными буквами при рассмотрении шаблонов регулярных выражений. Если регистр букв имеет значение, необходимо добавить символ "@" в начало строки. Например:

@МАГ=Международная ассоциация геодезии

Ниже приводится список специальных символов, применяемых в регулярных выражениях VBScript.

СимволыОписание
\ Для символов, которые обычно рассматриваются литерально, указывает, что следующий символ является специальным символом и не интерпретируется литерально.

Например, "b" совпадает с символом "b". Поместив обратную наклонную черту перед "b", то есть "\b", придаём символу специальное значение - "граница слова".


Или:


Для символов, которые обычно рассматриваются как специальные, указывает, что следующий символ является не специальным символом и должен интерпретироваться литерально.

Например, "*" это специальный символ. Чтобы искать "*" литерально, поставьте перед ним обратную наклонную черту; например, "a\*" совпадает с "a*".
^ Совпадение с начала ввода.

Например, "^A" не совпадает с "A" в строке "an A", но совпадает с первой "A" в строке "An A".
$ Совпадение в конце ввода.

Например, "t$" не совпадает с "t" в "eater", но совпадает с ним в "eat".
* Совпадение с предыдущим символом ноль или более раз.

Например, "bo*" совпадает с "boooo" в "A ghost booooed" и с "b" в "A bird warbled", но ничего не совпадает в "A goat grunted".
+ Совпадение с предыдущим символом один или более раз. Эквивалентно {1,}.

Например, "a+" совпадает с "a" в "candy" и со всеми "a" в "caaaaaaandy".
? Совпадение с предыдущим символом ноль или один раз.

Например, "e?le?" совпадает с "el" в "angel" и с "le" в "angle".
. Совпадает с любым одиночным символом, исключая символ новой строки.

Например, ".n" совпадает с "an" и "on" в "nay, an apple is on the tree", но не с "nay".
(x) Совпадает с "x" и запоминает совпадение. Это называется "захватывающие скобки". Использовать подстроку, которая была запомнена, можно при помощи специального символа $N, где N - это порядковый номер подстроки в шаблоне.

Например, "(foo)" совпадает с и запоминает "foo" в "foo bar".
x|y Совпадает с "x" или с "y".

Например, "green|red" совпадает с "green" в "green apple" и с "red в "red apple".
{n} Где n это положительное целое. Совпадает точно с n появлений предшествующего элемента.

Например, "a{2}" не совпадает с "a" в "candy", но совпадает со всеми "a" в "caandy" и с первыми двумя "a" в "caaandy".
{n,} Где n это положительное целое. Совпадает с не менее, чем n появлений предшествующего элемента.

Например, "a{2,}" не совпадает с "a" в "candy", но совпадает со всеми "a" в "caandy" и в "caaaaaaandy".
{n,m} Где n и m это положительные целые. Совпадает с минимум n и с максимум m появлений предшествующего элемента.

Например, "a{1,3}" не совпадает ни с чем в "cndy", совпадает с "a" в "candy", с первыми двумя "a" в "caandy" и с первыми тремя "a" в "caaaaaaandy". Обратите внимание, что при совпадении с "caaaaaaandy", совпадает "aaa", хотя оригинальная строка содержит больше "a".
[xyz] Набор символов. Совпадение с одним из символов в скобках. Можно специфицировать диапазон символов с помощью дефиса.

Например, [abcd] это то же самое, что [a-c]. Совпадает с "b" в "brisket" и с "c" в "ache".
[^xyz] Отрицающий набор символов. То есть совпадение с тем, что не заключено в скобки. Можно специфицировать диапазон символов с помощью дефиса.

Например, [^abc] это то же самое, что [^a-c]. С начала совпадает с "r" в "brisket" и с "h" в "chop".
\b Совпадает с границей слова, такой как пробел.

Например, "er\b" совпадает с "er" в "never", но не с "er" в "verb".

К сожалению, VBScript игнорирует русские буквы, поэтому данный специальный символ нельзя использовать для обозначения границы слов русского языка.
\B Совпадение не в конце слова.

Например, "ea*r\B" совпадает с "ear" в "never early".
\d Совпадает с цифрой. Эквивалентно [0-9].

Например, "\d" или "[0-9]" совпадает с "2" в "B2 is the suite number".
\D Совпадает с символом, не являющимся цифрой. Эквивалентно[^0-9].

Например, "\D" или "[^0-9]" совпадает с "B" в "B2 is the suite number".
\f Совпадает с прогоном (form-feed) страницы.
\n Совпадает с символом новой строки.
\r Совпадает с "возвратом каретки".
\s Совпадает с одиночным пробельным символом. Эквивалентно "[ \f\n\r\t\v]".
\S Совпадает с одиночным символом, отличным от пробелов. Эквивалентно "[^ \f\n\r\t\v]".
\t Совпадает с символом табуляции.
\v Совпадает с символом вертикальной табуляции.
\w Совпадает с любым алфавитным или цифровым символом, включая символ подчёркивания. Эквивалентно "[A-Za-z0-9_]".

Например, "\w" совпадает с "a" в "apple", "5" в "5,28" и "3" в "3D".
\W Совпадает с любым не-словом. Эквивалентно "[^A-Za-z0-9_]".

Например, "\W" или "[^$A-Za-z0-9_]" совпадает с "%" в "50%".
\num Где num это положительное целое. Обратная ссылка на последнее совпадение подстроки.

Например, "(.)\1" совпадает с двумя рядом стоящими одинаковыми символами.
\xhh Совпадает с символом с кодом hh (два шестнадцатиричных числа).

Например, "\x41" совпадает с буквой "A".

Английская версия:


Французская версия:


Немецкая версия:


Русская версия:


Скачено с сайта: best-of-best.narod.ru