Выполнить поиск всех имен файлов, соответствующих этому:
(?<!controller|map|anythingelse)$
(Удалите |anythingelse
, если нет других ключевых слов, или добавьте другие ключевые слова аналогичным образом.)
Если вы не можете использовать отрицательные lookbehinds (бит (?<!
.. )
), выполните поиск имен файлов, которые не соответствуют этому:
(?:controller|map)$
И если это все еще не работает (возможно, не в некоторых IDE), удалите часть ?:
, и это, вероятно, сработает - это просто делает ее не захватывающей группой, но разница здесь довольно незначительна.
Если вы используете что-то, где полная строка должна совпадать, то вы можете просто сделать префикс любого из вышеперечисленных с ^.*
, чтобы сделать это.
Обновление:
В ответ на это:
, но с использованием обоих
public*.class[a-zA-Z]*(?<!controller|map)$
public*.class*.(?<!controller)$
нет ни одного совпадения !!!
Не совсем уверен, что вы пытаетесь сделать с публикой / классом, так что попробуйте это:
public.*class.*(?<!controller|map)$`
.
- это регулярное выражение, которое означает «все, кроме новой строки», а *
означает ноль или более раз.
Если это не то, что вам нужно, отредактируйте вопрос с более подробной информацией.