Регулярное выражение для соответствия определенным строкам, кроме случаев, когда в них есть определенные слова (доступно ограниченное количество регулярных выражений) - PullRequest
0 голосов
/ 25 июля 2011

Я использую приложение для отслеживания журналов (BareTailPro), которое выделяет строки, которые соответствуют регулярным выражениям. В настоящее время у меня установлен фильтр error (игнорировать регистр), который возвращает, например:

25/07/2011 00:09:43.384 [Error] Timeout elapsed
25/07/2011 01:44:04.541 [Error] Receiver TopicName message count changed
25/07/2011 06:07:23.648 [Error] Error processing files
25/07/2011 09:40:04.591 [Error] Receiver TopicName message count changed
25/07/2011 16:42:12.163 [Error] Error Getting Matches & Rejects

Я не хочу видеть строки с Receiver TopicName.*.

Можно ли настроить регулярное выражение для этого? Кажется, что приложение имеет чрезвычайно ограниченный словарный запас выражений: ссылка

Ответы [ 3 ]

1 голос
/ 25 июля 2011

Учитывая ответ Догберта, в котором говорится, что нет негативного взгляда, я предлагаю следующее:

Если вы знаете, что все возможные вещи, которые появляются после ошибки, например Timeout, Error, Error Getting Matchesи т.д. ... Вы можете добавить все это к своему регулярному выражению.Таким образом, вместо совпадения вы можете сопоставить error (Timeout|Error|Error Getting Matches) и т. Д.

Это не идеальное решение (и вы рискуете его пропустить), но оно может сработать.

0 голосов
/ 25 июля 2011

Вы можете попробовать отрицательный взгляд , если BareTailPro поддерживает это.

0 голосов
/ 25 июля 2011

Это невозможно, так как на этой странице не упоминается поддержка операторов прогнозирования.

...