我的问题很简单。例如,如何使用正则表达式从域中删除tld,而没有已知存在的每个可能tld的预定义列表。这看起来很简单,但是我还没有在stackoverflow上找到一个没有使用列表的谷歌或者没有使用像.co.uk或com.au这样的各种tld使用pop方法简单地说它没用。为此,此方案已删除http://www. or http://
。
google.com --> google
google.co.uk --> google
stackoverflow.com --> stackoverflow
谢谢
答案 0 :(得分:0)
它是不可能的(如果你关心子域名)
如果您不关心子域名:
domain=url.split(".").shift();
如果您关心子域名, 最正确的方法,(约80%正确)将从网址中删除所有内容,然后取最后一个:
domain=url.split(".").filter(e=>e.length>3).pop();
if(domain==undefined){
domain=url.split(".").pop();
}
这会因account.db.de stadt.hamburg等而失败,但如果没有tld列表,这是不可能的。