НЕ соответствует регулярному выражению - PullRequest
0 голосов
/ 13 ноября 2009

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

Здесь я хочу запретить YouTube и IP-адрес. Ниже приведен код, который соответствует двум сайтам. Как я могу НЕ соответствовать им и позволить двум Google (или любому другому сайту) совпадать?

Вот код C #, который я использовал для проверки своего регулярного выражения.

        var mq = Regex.Match("http://google.com\nhttp://youtube.com\nhttp://google.com/ddhf\n72.72.72.72\n",
            @"(.*youtube\.com.*|\d+\.\d+\.\d+\.\d+)", RegexOptions.Multiline);
        while (mq.Success)
        {
            string sz = mq.Groups[0].Value;
            Console.WriteLine(sz);
            mq = mq.NextMatch();
        }

        return;

1 Ответ

2 голосов
/ 13 ноября 2009

Вам нужно ?! построить . Так было бы:

(?!.*youtube\.com.*|\d+\.\d+\.\d+\.\d+)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...