Регулярное выражение для поиска ссылок, которые не указывают на конкретный домен - PullRequest
1 голос
/ 07 июня 2011

Что такое регулярное правило, чтобы определить, содержит ли текст ссылки, которые НЕ указывают на конкретный домен?

Я нашел этот пост, но мне нужно обратное: Проверка определенного URL-адреса домена с помощью регулярного выражения

1 Ответ

1 голос
/ 07 июня 2011

Вы можете использовать точный код в ответе на ваш связанный , но поместите свою логику в случай "не соответствует".Вот мой быстрый .Net переписать:

Regex r = new Regex(@"^https?://([a-z0-9-]+\.)*blah\.com(/.*)?$";

string[] tests = {
    'http://blah.com/so/this/is/good'
  , 'http://blah.com/so/this/is/good/index.html'
  , 'http://www.blah.com/so/this/is/good/mice.html#anchortag'
  , 'http://anysubdomain.blah.com/so/this/is/good/wow.php'
  , 'http://anysubdomain.blah.com/so/this/is/good/wow.php?search=doozy'
  , 'http://any.sub-domain.blah.com/so/this/is/good/wow.php?search=doozy' 
  , 'http://999.sub-domain.blah.com/so/this/is/good/wow.php?search=doozy' 
  , 'http://obviousexample.com'
  , 'http://bbc.co.uk/blah.com/whatever/you/get/the/idea'
  , 'http://blah.com.example'
  , 'not/even/a/blah.com/url'
}

foreach (string url in tests ) {
  if ( !r.Matches(url) )
  {
    // Did not match
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...