Geçenlerde bir Public Suffix List API uygulanan: Bu kod baskılar Running
public class Test {
public static void main(String[] args) throws URISyntaxException {
ImmutableList<String> urls = ImmutableList.of(
"http://example.google.com", "http://google.com",
"http://bing.bing.bing.com", "http://www.amazon.co.jp/");
for (String url : urls) {
System.out.println(url + " -> " + getTopPrivateDomain(url));
}
}
private static String getTopPrivateDomain(String url) throws URISyntaxException {
String host = new URI(url).getHost();
InternetDomainName domainName = InternetDomainName.from(host);
return domainName.topPrivateDomain().name();
}
}
: Burada
size kısa bir örnek ayıklamak arıyorsanız, So
PublicSuffixList suffixList = new PublicSuffixListFactory().build();
assertEquals(
"google.com", suffixList.getRegistrableDomain("example.google.com"));
assertEquals(
"bing.com", suffixList.getRegistrableDomain("bing.bing.bing.com"));
assertEquals(
"amazon.co.jp", suffixList.getRegistrableDomain("www.amazon.co.jp"));
[TLD ] (http://en.wikipedia.org/wiki/Top-level_domain) (".com" bölümü) ve [SLD] (http://en.wikipedia.org/wiki/Second-level_dom) ain) ("google" veya "bing" kısmı) URL’lerden mi? –
Sadece etki alanının son iki bölümünü istiyorsanız, parçaları almak ve son ikisine dönmek için sadece 'String.split (' \\. ') 'Yapamazdınız mı? Ya da uygun dizinden çıktıktan sonra (kolayca) bir 'String.substring (indexOfPenultimatePeriod)' yapın? Buradaki karmaşıklık nedir? –
ikinci düzey etki alanı bölümü ... – ramuvan