Wie kann man eine gegebene URL-Zeichenfolge analysieren und daraus den Domänennamen extrahieren?
Wie unten gezeigt:
domainName("http://github.com/carbonfive/raygun") == "github" domainName("http://www.zombie-bites.com") == "zombie-bites" domainName("https://www.cnet.com") == "cnet"
Wie wir alle wissen, ist der erste Teil der URL der Protokollname, der viele Arten haben kann, wie zum Beispiel http, https und sogar Im zukünftigen Protokoll werden weitere hinzugefügt. Wenn also alle Protokollnamen übereinstimmen, ist die Skalierbarkeit zu schlecht.
Aber egal welche Art von Vereinbarung Sie haben, dieser Absatz ist wichtig – „://“.
Und oft folgt auf diese Zeichenfolge der Domänenname, und wir können die Zeichenfolge abfangen.
Der folgende Code erklärt im Detail:
function domainName(url){ var sign = "://"; var pos = url.indexOf(sign); //如果以协议名开头 //如:http://github.com/ if(pos >= 0){ pos += sign.length; //截取协议名以后的部分 //github.com/ url = url.slice(pos); } //以小数点作分割 var array = url.split("."); //如果是以3W开头,返回第二部分 //如:www.github.com if(array[0] === "www"){ return array[1]; } //如果不是以3W开头,则返回第一部分 //如:github.com/ return array[0]; }
Diese Methode berücksichtigt nur einige häufige Situationen. Einige Situationen, wie z. B. Subdomainnamen, werden nicht berücksichtigt.
Das Obige ist eine interessante JavaScript-Frage: Extrahieren des Inhalts des Domainnamens aus der URL. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn)!