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

Синтаксис Описание

*

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

  • Один знак. Каждый из следующих шаблонов с одним подстановочным знаком будет обнаруживать слово veryevil: veryevil*, very*, *il

  • Несколько знаков. Каждый из следующих шаблонов с несколькими подстановочными знаками будет обнаруживать слово veryevil: V*r*v*l, *very*, *evil*

?

Соответствует любому одиночному символу. Злоумышленники часто вставляют дополнительные знаки между буквами, чтобы обойти фильтры.

Например, чтобы отфильтровать слово К-О-Н-К-У-Р-С, можно использовать фильтр: К?О?Н?К?У?Р?С

[набор знаков]

Перечень знаков и диапазонов знаков, заключенный в квадратные скобки (например, [abcdef]). Совпадение будет обнаружено, если совпадает какой-либо символ из указанного набора.

Это может оказаться полезным для создания единого правила, которое будет выполняться, когда вместо буквы "о" используется ноль (0). Например, слова "озон" и "оз0н" можно отфильтровать по шаблону "оз[о0]н".

[^набор знаков]

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

[диапазон символов]

Используется для указания нескольких знаков в наборе. Определяется начальным знаком, знаком дефиса (-) и конечным знаком.

Например, фильтру klez[ad-gp] соответствуют слова kleza, klezd, kleze, klezf, klezg и klezp, но не соответствуют klezb или klezr.

\знак

Указывает на то, что используется сам специальный знак (специальные знаки: * ? [ ] - ^ < >). Обратная косая черта называется escape-знаком и указывает на то, что зарезервированный управляющий знак должен восприниматься буквально, т.е. как текстовый знак.

Например, при вводе слова *hello* будет выполняться поиск слова hello в любом месте имени файла. При вводе слова *\*hello\** будет выполняться поиск слова *hello*. При вводе *\*hello\?\** будет выполняться поиск слова *hello?*.

Примечание.
Обратная косая черта должна стоять перед каждым специальным знаком, используемым в качестве текстового знака.

Связанные разделы