Учитывая URL, как мне извлечь зарегистрированный домен, используя Публичный список суффиксов (список действующих TLD, например, этот список )?
Например, учитывая, что a.bg
является действительным общедоступным суффиксом:
http://www.test.start.a.bg/hello.html -> start.a.bg
http://test.start.a.bg/ -> start.a.bg
http://test.start.abc.bg/ -> abc.bg (.bg is the public suffix)
Это невозможно сделать с помощью простых манипуляций со строками, поскольку открытый суффикс может состоять из нескольких уровней в зависимости от TLD.
P.S. Неважно, как я читаю список (база данных или простой файл), но список должен быть доступен локально, поэтому я не всегда зависим от внешних служб.