Беглый взгляд на список publicsuffix.org, похоже, что вы могли бы сделать разумное приближение, удалив последние три сегмента («сегмент» здесь означает раздел между двумя точками) из доменов, где последний сегмент равен двум длинных символов, при условии, что это код страны и будет дополнительно подразделен. Если последний сегмент - «мы», а второй-последний сегмент - также два символа, удалите последние четыре сегмента. Во всех остальных случаях удалите последние два сегмента. e.g.:
«пример» не состоит из двух символов, поэтому удалите «domain.example», оставив «www»
«пример» не состоит из двух символов, поэтому удалите «domain.example», оставив «super.duper»
«uk» - это два символа (но не «us»), поэтому удалите «domain.co.uk», оставив «super.duper»
«нас» - это два символа и это «мы», плюс «wy» также два символа, поэтому удалите «pvt.k12.wy.us», оставив «foo».
Обратите внимание, что, хотя это работает для всех примеров, которые я видел в ответах до сих пор, оно остается лишь разумным приближением. Это не совсем правильно, хотя я подозреваю, что оно настолько близко, насколько это возможно, без составления / получения фактического списка, который можно использовать для справки.