Belov Solutions

Совпадение с любыми символами, кроме указанных, в регулярных выражениях

Введение

Эта статья объясняет, как использовать метасимвол отрицания (^) в наборах символов для поиска любых символов, кроме указанных. Вы узнаете, как исключать определённые символы из поиска, чтобы сделать шаблоны более точными. Примеры подходят для всех платформ с поддержкой регулярных выражений.

Отрицание в наборах символов

Метасимвол ^ внутри набора символов ([]) указывает, что совпадение должно быть с любым символом, кроме перечисленных. Рассмотрим пример с файлами:

Текст:

sales1.xls
orders3.xls
sales2.xls
sales3.xls
apac1.xls
europe2.xls
sam.xls
na1.xls
na2.xls
sa1.xls
cal.xls

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

[ns]a[^0-9]\.xls

Результат:

sales1.xls
orders3.xls
sales2.xls
sales3.xls
apac1.xls
europe2.xls
sam.xls
na1.xls
na2.xls
sa1.xls
cal.xls

Анализ: Шаблон [ns]a[^0-9]\.xls ищет файлы, начинающиеся с n или s, затем a, затем любой символ, кроме цифры, за которым следует .xls. Это соответствует sam.xls, но исключает na1.xls, na2.xls и sa1.xls.

Как работает отрицание

Метасимвол ^ отрицает весь набор символов или диапазон внутри []. Например, [^0-9] совпадает с любым символом, кроме цифр. Это противоположно [0-9], который ищет только цифры.

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

Заключение

Отрицание в наборах символов с помощью метасимвола ^ позволяет исключать нежелательные символы из поиска, делая шаблоны более точными. Это полезно, когда нужно искать всё, кроме определённого набора символов. Комбинируя наборы, диапазоны и отрицание, вы можете создавать мощные регулярные выражения для сложных задач.

Отзывы

Оставить отзыв

Ваша эл. почта не будет опубликована